๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
728x90

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ’€์ด/Greedy13

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๊ตฌ๋ช…๋ณดํŠธ https://school.programmers.co.kr/learn/courses/30/lessons/42885# ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr ๋ณดํŠธ์— ์ตœ๋Œ€ 2๋ช…์˜ ์ธ์›์ œํ•œ์ด ์žˆ๋‹ค๋Š” ์กฐ๊ฑด๋งŒ ์ž˜ ์ฒดํฌํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค. ์ฒ˜์Œ์—๋Š” ๋ชธ๋ฌด๊ฒŒ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜์—ฌ ํ•œ๋ฒˆ์— ํ•œ ๋ช… ๋˜๋Š” ๋‘ ๋ช…์”ฉ ํƒœ์›Œ์ฃผ์—ˆ๋Š”๋ฐ, ๊ทธ๋ ‡๊ฒŒ ํ’€๋ฉด [10,20,30,40,50,60,70,80,90], 100 ๊ณผ ๊ฐ™์€ ํ…Œ์ŠคํŠธ์ผ€์ด์Šค์—์„œ ์˜ค๋‹ต์ด ๋‚˜์˜จ๋‹ค. ๊ทธ๋ž˜์„œ ๋ชธ๋ฌด๊ฒŒ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๊ณ , ๋ฆฌ์ŠคํŠธ์˜ ๋งจ ์•ž๊ณผ ๋งจ ๋’ค (๋‚จ์€ ์ธ์› ์ค‘ ๋ชธ๋ฌด๊ฒŒ ์ตœ๋Œ€์ธ ์ธ์›๊ณผ ์ตœ์†Œ์ธ ์ธ์›) ์„ ํ•œ ๋ฒˆ์— ํƒœ์šธ.. 2023. 7. 5.
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋ง์น ํ•˜๊ธฐ https://school.programmers.co.kr/learn/courses/30/lessons/161989# ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr python def solution(n, m, section): answer = 0 idx = 0 while idx 2023. 5. 25.
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]์ฒด์œก๋ณต https://school.programmers.co.kr/learn/courses/30/lessons/42862 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr ๋ฌธ์ œ ์กฐ๊ฑด ์ค‘, ์ด ๋งˆ์ง€๋ง‰ ์กฐ๊ฑด๋งŒ ์ฃผ์˜ํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค. ์—ฌ๋ฒŒ ์ฒด์œก๋ณต์„ ๊ฐ€์ ธ์˜จ ํ•™์ƒ์ด ์ฒด์œก๋ณต์„ ๋„๋‚œ๋‹นํ–ˆ์„ ๊ฒฝ์šฐ, ๋‹ค๋ฅธ ํ•™์ƒ์—๊ฒŒ ๋นŒ๋ ค์ค„ ์ˆ˜ ์—†๋‹ค. --> ํ•ด๋‹น ํ•™์ƒ๋“ค์„ ๋จผ์ € ์ฒ˜๋ฆฌํ•œ ๋‹ค์Œ, ๋‹ค๋ฅธ ๋„๋‚œ๋‹นํ•œ ํ•™์ƒ๋“ค์—๊ฒŒ ์ฒด์œก๋ณต์„ ๋นŒ๋ ค์ฃผ๋Š” ์ž‘์—…์„ ์ง„ํ–‰ํ•ด์•ผ ์ •๋‹ต ํŒ์ •์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์—ˆ๋‹ค. python def solution(n, lost, reserve): students = [0]*(n+1) # ํ•™์ƒ ๋ฒˆํ˜ธ๋Š” .. 2023. 5. 24.
[๋ฐฑ์ค€]2839๋ฒˆ: ์„คํƒ• ๋ฐฐ๋‹ฌ https://www.acmicpc.net/problem/2839 2839๋ฒˆ: ์„คํƒ• ๋ฐฐ๋‹ฌ ์ƒ๊ทผ์ด๋Š” ์š”์ฆ˜ ์„คํƒ•๊ณต์žฅ์—์„œ ์„คํƒ•์„ ๋ฐฐ๋‹ฌํ•˜๊ณ  ์žˆ๋‹ค. ์ƒ๊ทผ์ด๋Š” ์ง€๊ธˆ ์‚ฌํƒ•๊ฐ€๊ฒŒ์— ์„คํƒ•์„ ์ •ํ™•ํ•˜๊ฒŒ Nํ‚ฌ๋กœ๊ทธ๋žจ์„ ๋ฐฐ๋‹ฌํ•ด์•ผ ํ•œ๋‹ค. ์„คํƒ•๊ณต์žฅ์—์„œ ๋งŒ๋“œ๋Š” ์„คํƒ•์€ ๋ด‰์ง€์— ๋‹ด๊ฒจ์ ธ ์žˆ๋‹ค. ๋ด‰์ง€๋Š” 3ํ‚ฌ๋กœ๊ทธ www.acmicpc.net ์•„์ด๋””์–ด 1. 5kg๋ด‰์ง€์— ์„คํƒ•์„ ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๋งŒํผ ๋‹ด๋Š”๋‹ค. 2. ๋‚จ์€ ์„คํƒ•์˜ ์–‘์ด 3kg์œผ๋กœ ๋‚˜๋ˆ„์–ด๋–จ์–ด์ ธ์•ผ๋งŒ 3kg ๋ด‰์ง€์— ๋‹ด์•„์„œ ๋ฐฐ๋‹ฌ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ๋”ฐ๋ผ์„œ ๋‚จ์€ ์„คํƒ•์˜ ์–‘์ด 3์œผ๋กœ ๋‚˜๋ˆ„์–ด๋–จ์–ด์ง€์ง€ ์•Š์œผ๋ฉด, 5kg๋ด‰์ง€๋กœ๋ถ€ํ„ฐ ๋‹ค์‹œ ์„คํƒ•์„ ๋ถ“๋Š”๋‹ค. (๋˜๋Œ๋ฆฌ๊ธฐ) 3-1. ๋‚จ์€ ์„คํƒ•์˜ ์–‘์ด 3kg์œผ๋กœ ๋‚˜๋ˆ„์–ด๋–จ์–ด์ง€๊ฒŒ ๋˜๋Š” ์ˆœ๊ฐ„์ด ์˜ค๋ฉด, ๋‚จ์€ ์„คํƒ•์„ 3kg ๋ด‰์ง€์— ๋ชจ๋‘ ๋‚˜๋ˆ  ๋‹ด๋Š”๋‹ค. 3-2. ๋ชจ๋“  ์„คํƒ•์„ ๋‹ค ๋ถ€์–ด๋„ 3.. 2023. 5. 6.
[์ด์ฝ”ํ…Œ] ๋งŒ๋“ค ์ˆ˜ ์—†๋Š” ๊ธˆ์•ก ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ํ™”ํ๋ฅผ ์ž‘์€๋‹จ์œ„๋ถ€ํ„ฐ ํ•˜๋‚˜์”ฉ ๊บผ๋‚ด๋ณด๋ฉฐ, ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ธˆ์•ก์„ ์ฒดํฌํ•ด๋ณด๋ฉด์„œ ๊ทœ์น™์„ ์ฐพ์œผ๋ฉด ๋œ๋‹ค. ๋ฌธ์ œ ์˜ˆ์‹œ๋ฅผ ํ†ตํ•ด ์ฐจ๊ทผ์ฐจ๊ทผ ์ƒ๊ฐํ•ด๋ณด์ž. ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ํ™”ํ๋Š” [1a, 1b, 2, 3, 9]์ด๋‹ค. (1์›์ด 2๊ฐœ๋ผ์„œ ํ—ท๊ฐˆ๋ฆฌ๋‹ˆ๊นŒ ํŽธ์˜์ƒ 1a, 1b๋ผ๊ณ  ๋ถ€๋ฅด๊ฒ ๋‹ค.) ๐Ÿ’ฐ 1a์›์„ ๊บผ๋‚ด๊ณ , ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ธˆ์•ก ์ฒดํฌ ์ง€๊ธˆ๊นŒ์ง€ ๋งŒ๋“ค์–ด๋‘” ๊ธˆ์•ก: 0์› 1a์›์„ ๊บผ๋ƒ„์œผ๋กœ์จ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ฒŒ ๋œ ๊ธˆ์•ก: 1์› ๐Ÿ’ฐ 1b์›์„ ๊บผ๋‚ด๊ณ , ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ธˆ์•ก ์ฒดํฌ ์ง€๊ธˆ๊นŒ์ง€ ๋งŒ๋“ค์–ด๋‘” ๊ธˆ์•ก: 1์› 1b์›์„ ๊บผ๋ƒ„์œผ๋กœ์จ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ฒŒ ๋œ ๊ธˆ์•ก: 1b=1์›, 1+1b=2์› ๐Ÿ’ฐ 2์›์„ ๊บผ๋‚ด๊ณ , ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ธˆ์•ก ์ฒดํฌ ์ง€๊ธˆ๊นŒ์ง€ ๋งŒ๋“ค์–ด๋‘” ๊ธˆ์•ก: 1์›, 2์› 2์›์„ ๊บผ๋ƒ„์œผ๋กœ์จ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ฒŒ ๋œ ๊ธˆ์•ก: 2=2์›, 1+2=3์›, 2+2=4์› ๐Ÿ’ฐ 3์›.. 2023. 3. 26.
[์ด์ฝ”ํ…Œ] ๋ณผ๋ง๊ณต ๊ณ ๋ฅด๊ธฐ ์ถœ์ฒ˜: ์ฑ… p.315 n์ด ์ตœ๋Œ€ 1000์œผ๋กœ ๋งค์šฐ ์ž‘๊ธธ๋ž˜ ์‹œ๊ฐ„์ œํ•œ๋„ ๋„๋„ํ•  ๊ฒƒ ๊ฐ™์•„์„œ ์ด์ค‘ํฌ๋ฌธ ๋Œ๋ ค์„œ ํ•˜๋‚˜ํ•˜๋‚˜ ์ฒดํฌํ•ด๋ณด์•˜๋‹ค. n, m = map(int,input().split()) balls = list(map(int,input().split())) cnt = 0 for i in range(n): j = i + 1 while j < n: if balls[i] != balls[j]: cnt += 1 j += 1 print(cnt) ๋‚˜๋Š” ์ €๋ ‡๊ฒŒ ํ’€์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ’€๋ฉด์„œ ๋„๋Œ€์ฒด ์™œ ๋ณผ๋ง๊ณต์˜ ์ตœ๋Œ€ ๋ฌด๊ฒŒ๋ฅผ ์•Œ๋ ค์คฌ์„๊นŒ ์ƒ๊ฐํ–ˆ์—ˆ๋‹ค. ๋ณผ๋ง๊ณต์˜ ์ตœ๋Œ€ ๋ฌด๊ฒŒ๋ฅผ ์•Œ๋ ค์ค€ ์ด์œ ๋Š” ๋ฌด๊ฒŒ๋ณ„๋กœ ๊ณต์˜ ๊ฐœ์ˆ˜๋ฅผ ์„ธ๊ณ  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๋‚˜๋ˆ ์„œ ํ’€ ๊ฒฝ์šฐ์— ํ•„์š”ํ•ด์„œ์˜€๋‹ค. ๋ฌธ์ œ์— ๋‚˜์˜จ ์˜ˆ์‹œ๋กœ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ฒดํฌํ•ด๋ดค์„ ๋•Œ, ๋‚ด ํ’€์ด(์ฒซ ๋ฒˆ์งธ ํ’€์ด)๋ณด๋‹ค ๊ต์žฌ์— .. 2023. 3. 25.
728x90