์•Œ๊ณ ๋ฆฌ์ฆ˜/Greedy 6

[๋ฐฑ์ค€ 21758 ๐Ÿฅ‡] ๊ฟ€ ๋”ฐ๊ธฐ

https://www.acmicpc.net/problem/21758 21758๋ฒˆ: ๊ฟ€ ๋”ฐ๊ธฐ ์ฒซ ๋ฒˆ์งธ ์ค„์— ๊ฐ€๋Šฅํ•œ ์ตœ๋Œ€์˜ ๊ฟ€์˜ ์–‘์„ ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net ๋ฌธ์ œ ํ’€์ด ๋ฒŒ ๋‘ ๋งˆ๋ฆฌ์™€ ๋ฒŒํ†ต ํ•˜๋‚˜๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š” ๊ฒฝ์šฐ๋Š” 3๊ฐ€์ง€์ธ ๊ฒƒ๊ณผ ๋ˆ„์ ํ•ฉ์„ ์ด์šฉํ•ด์„œ ํ’€์—ˆ๋‹ค. ๋ฒŒ ๋ฒŒ ๋ฒŒํ†ต ๋ฒŒ ๋ฒŒํ†ต ๋ฒŒ ๋ฒŒํ†ต ๋ฒŒ ๋ฒŒ ์„ธ ๊ฐ€์ง€ ๊ฒฝ์šฐ ์ค‘ ๊ฐ€์žฅ ํฐ ๊ฟ€์˜ ํ•ฉ์ด ์ •๋‹ต์ด ๋œ๋‹ค. ๋จผ์ € ๋ฒŒํ†ต์ด ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ์— ์œ„์น˜ํ•˜๋Š” ๊ฒฝ์šฐ์˜ ๊ฟ€์˜ ํ•ฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ตฌํ–ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ๋ฒŒ์€ 0๋ฒˆ ์ธ๋ฑ์Šค์— ๊ณ ์ •ํ•ด๋‘๊ณ , ๋ฒŒํ†ต์€ ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค์— ๊ณ ์ •ํ•ด๋‘” ๋’ค์— ๋‘ ๋ฒˆ์งธ ๋ฒŒ์˜ ์œ„์น˜๋ฅผ ์˜ฎ๊ฒจ๊ฐ€๋ฉด์„œ ์ตœ๋Œ“๊ฐ’์„ ํƒ์ƒ‰ํ•œ๋‹ค. ์ฒซ ๋ฒˆ์งธ ๋ฒŒ๊ณผ ๋ฒŒํ†ต ์‚ฌ์ด์˜ ๊ฟ€์˜ ํ•ฉ์€ ๋ˆ„์ ํ•ฉ์„ ์ €์žฅํ•ด๋‘” ๋ฐฐ์—ด (sumHoney[n-1]-sumHoney[0])์—์„œ ๋‘ ๋ฒˆ์งธ ๋ฒŒ์˜ ๊ฟ€ ๊ฐ’์„ ๋บ€ ๊ฒƒ์ด๋‹ค. ๋‘..

[๋ฐฑ์ค€ 1931 ๐Ÿฅˆ] ํšŒ์˜์‹ค ๋ฐฐ์ •

https://www.acmicpc.net/problem/1931 1931๋ฒˆ: ํšŒ์˜์‹ค ๋ฐฐ์ • (1,4), (5,7), (8,11), (12,14) ๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. www.acmicpc.net ๋ฌธ์ œ ํ•œ ๊ฐœ์˜ ํšŒ์˜์‹ค์ด ์žˆ๋Š”๋ฐ ์ด๋ฅผ ์‚ฌ์šฉํ•˜๊ณ ์ž ํ•˜๋Š” N๊ฐœ์˜ ํšŒ์˜์— ๋Œ€ํ•˜์—ฌ ํšŒ์˜์‹ค ์‚ฌ์šฉํ‘œ๋ฅผ ๋งŒ๋“ค๋ ค๊ณ  ํ•œ๋‹ค. ๊ฐ ํšŒ์˜ I์— ๋Œ€ํ•ด ์‹œ์ž‘์‹œ๊ฐ„๊ณผ ๋๋‚˜๋Š” ์‹œ๊ฐ„์ด ์ฃผ์–ด์ ธ ์žˆ๊ณ , ๊ฐ ํšŒ์˜๊ฐ€ ๊ฒน์น˜์ง€ ์•Š๊ฒŒ ํ•˜๋ฉด์„œ ํšŒ์˜์‹ค์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํšŒ์˜์˜ ์ตœ๋Œ€ ๊ฐœ์ˆ˜๋ฅผ ์ฐพ์•„๋ณด์ž. ๋‹จ, ํšŒ์˜๋Š” ํ•œ๋ฒˆ ์‹œ์ž‘ํ•˜๋ฉด ์ค‘๊ฐ„์— ์ค‘๋‹จ๋  ์ˆ˜ ์—†์œผ๋ฉฐ ํ•œ ํšŒ์˜๊ฐ€ ๋๋‚˜๋Š” ๊ฒƒ๊ณผ ๋™์‹œ์— ๋‹ค์Œ ํšŒ์˜๊ฐ€ ์‹œ์ž‘๋  ์ˆ˜ ์žˆ๋‹ค. ํšŒ์˜์˜ ์‹œ์ž‘์‹œ๊ฐ„๊ณผ ๋๋‚˜๋Š” ์‹œ๊ฐ„์ด ๊ฐ™์„ ์ˆ˜๋„ ์žˆ๋‹ค. ์ด ๊ฒฝ์šฐ์—๋Š” ์‹œ์ž‘ํ•˜์ž๋งˆ์ž ๋๋‚˜๋Š” ๊ฒƒ์œผ๋กœ ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค. ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ํšŒ์˜์˜ ์ˆ˜ N(1 ≤ N ≤ 10..

[๋ฐฑ์ค€ 20310 ๐Ÿฅˆ] ํƒ€๋…ธ์Šค

https://www.acmicpc.net/problem/20310 20310๋ฒˆ: ํƒ€๋…ธ์Šค ์–ด๋А ๋‚ , ํƒ€๋…ธ์Šค๋Š” 0๊ณผ 1๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด $S$๋ฅผ ๋ณด์•˜๋‹ค. ์‹ ๊ธฐํ•˜๊ฒŒ๋„, $S$๊ฐ€ ํฌํ•จํ•˜๋Š” 0์˜ ๊ฐœ์ˆ˜์™€ $S$๊ฐ€ ํฌํ•จํ•˜๋Š” 1์˜ ๊ฐœ์ˆ˜๋Š” ๋ชจ๋‘ ์ง์ˆ˜๋ผ๊ณ  ํ•œ๋‹ค. ๊ฐ‘์ž๊ธฐ ์‹ฌ์ˆ ์ด ๋‚œ ํƒ€๋…ธ์Šค๋Š” $S$๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฌธ์ž www.acmicpc.net ๋ฌธ์ œ ํ’€์ด import sys numbers=list(sys.stdin.readline().strip()) zero, one = numbers.count('0')//2, numbers.count('1')//2 # 0์€ ๋’ค์—์„œ๋ถ€ํ„ฐ ์ง€์›Œ์ง ํ‘œ์‹œ for idx in range(len(numbers)-1,-1,-1): if zero

[๋ฐฑ์ค€ 11501 ๐Ÿฅˆ] ์ฃผ์‹

https://www.acmicpc.net/problem/11501 11501๋ฒˆ: ์ฃผ์‹ ์ž…๋ ฅ์˜ ์ฒซ ์ค„์—๋Š” ํ…Œ์ŠคํŠธ์ผ€์ด์Šค ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ž์—ฐ์ˆ˜ T๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ํ…Œ์ŠคํŠธ์ผ€์ด์Šค ๋ณ„๋กœ ์ฒซ ์ค„์—๋Š” ๋‚ ์˜ ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ž์—ฐ์ˆ˜ N(2 ≤ N ≤ 1,000,000)์ด ์ฃผ์–ด์ง€๊ณ , ๋‘˜์งธ ์ค„์—๋Š” ๋‚  ๋ณ„ ์ฃผ๊ฐ€๋ฅผ ๋‚˜ํƒ€ www.acmicpc.net ๋ฌธ์ œ ํ™์ค€์ด๋Š” ์š”์ฆ˜ ์ฃผ์‹์— ๋น ์ ธ์žˆ๋‹ค. ๊ทธ๋Š” ๋ฏธ๋ž˜๋ฅผ ๋‚ด๋‹ค๋ณด๋Š” ๋ˆˆ์ด ๋›ฐ์–ด๋‚˜, ๋‚  ๋ณ„๋กœ ์ฃผ๊ฐ€๋ฅผ ์˜ˆ์ƒํ•˜๊ณ  ์–ธ์ œ๋‚˜ ๊ทธ๊ฒŒ ๋งž์•„๋–จ์–ด์ง„๋‹ค. ๋งค์ผ ๊ทธ๋Š” ์•„๋ž˜ ์„ธ ๊ฐ€์ง€ ์ค‘ ํ•œ ํ–‰๋™์„ ํ•œ๋‹ค. ์ฃผ์‹ ํ•˜๋‚˜๋ฅผ ์‚ฐ๋‹ค. ์›ํ•˜๋Š” ๋งŒํผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์ฃผ์‹์„ ํŒ๋‹ค. ์•„๋ฌด๊ฒƒ๋„ ์•ˆํ•œ๋‹ค. ํ™์ค€์ด๋Š” ๋ฏธ๋ž˜๋ฅผ ์˜ˆ์ƒํ•˜๋Š” ๋›ฐ์–ด๋‚œ ์•ˆ๋ชฉ์„ ๊ฐ€์กŒ์ง€๋งŒ, ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ์ž์‹ ์ด ์ตœ๋Œ€ ์ด์ต์„ ์–ป์„ ์ˆ˜ ์žˆ๋Š”์ง€ ๋ชจ๋ฅธ๋‹ค. ๋”ฐ๋ผ์„œ ๋‹น์‹ ์—๊ฒŒ ๋‚  ๋ณ„๋กœ ์ฃผ์‹์˜..

[๋ฐฑ์ค€ 1461 ๐Ÿฅ‡] ๋„์„œ๊ด€

๋ฌธ์ œ ์„ธ์ค€์ด๋Š” ๋„์„œ๊ด€์—์„œ ์ผํ•œ๋‹ค. ๋„์„œ๊ด€์˜ ๊ฐœ๋ฐฉ์‹œ๊ฐ„์ด ๋๋‚˜์„œ ์„ธ์ค€์ด๋Š” ์‚ฌ๋žŒ๋“ค์ด ๋งˆ๊ตฌ ๋†“์€ ์ฑ…์„ ๋‹ค์‹œ ๊ฐ€์ ธ๋‹ค ๋†“์•„์•ผ ํ•œ๋‹ค. ์„ธ์ค€์ด๋Š” ํ˜„์žฌ 0์— ์žˆ๊ณ , ์‚ฌ๋žŒ๋“ค์ด ๋งˆ๊ตฌ ๋†“์€ ์ฑ…๋„ ์ „๋ถ€ 0์— ์žˆ๋‹ค. ๊ฐ ์ฑ…๋“ค์˜ ์›๋ž˜ ์œ„์น˜๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ์ฑ…์„ ๋ชจ๋‘ ์ œ์ž๋ฆฌ์— ๋†”๋‘˜ ๋•Œ ๋“œ๋Š” ์ตœ์†Œ ๊ฑธ์Œ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์„ธ์ค€์ด๋Š” ํ•œ ๊ฑธ์Œ์— ์ขŒํ‘œ 1์นธ์”ฉ ๊ฐ€๋ฉฐ, ์ฑ…์˜ ์›๋ž˜ ์œ„์น˜๋Š” ์ •์ˆ˜ ์ขŒํ‘œ์ด๋‹ค. ์ฑ…์„ ๋ชจ๋‘ ์ œ์ž๋ฆฌ์— ๋†”๋‘” ํ›„์—๋Š” ๋‹ค์‹œ 0์œผ๋กœ ๋Œ์•„์˜ฌ ํ•„์š”๋Š” ์—†๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์„ธ์ค€์ด๋Š” ํ•œ ๋ฒˆ์— ์ตœ๋Œ€ M๊ถŒ์˜ ์ฑ…์„ ๋“ค ์ˆ˜ ์žˆ๋‹ค. ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ์ฑ…์˜ ๊ฐœ์ˆ˜ N๊ณผ, ์„ธ์ค€์ด๊ฐ€ ํ•œ ๋ฒˆ์— ๋“ค ์ˆ˜ ์žˆ๋Š” ์ฑ…์˜ ๊ฐœ์ˆ˜ M์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„์—๋Š” ์ฑ…์˜ ์œ„์น˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. N๊ณผ M์€ 50๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค. ์ฑ…์˜ ์œ„์น˜๋Š” 0์ด ์•„๋‹ˆ๋ฉฐ, ์ ˆ๋Œ“๊ฐ’์€..

[๋ฐฑ์ค€ 2138 ๐Ÿฅ‡] ์ „๊ตฌ์™€ ์Šค์œ„์น˜

๋ฌธ์ œ N๊ฐœ์˜ ์Šค์œ„์น˜์™€ N๊ฐœ์˜ ์ „๊ตฌ๊ฐ€ ์žˆ๋‹ค. ๊ฐ๊ฐ์˜ ์ „๊ตฌ๋Š” ์ผœ์ ธ ์žˆ๋Š” ์ƒํƒœ์™€ ๊บผ์ ธ ์žˆ๋Š” ์ƒํƒœ ์ค‘ ํ•˜๋‚˜์˜ ์ƒํƒœ๋ฅผ ๊ฐ€์ง„๋‹ค. i(1 < i < N)๋ฒˆ ์Šค์œ„์น˜๋ฅผ ๋ˆ„๋ฅด๋ฉด i-1, i, i+1์˜ ์„ธ ๊ฐœ์˜ ์ „๊ตฌ์˜ ์ƒํƒœ๊ฐ€ ๋ฐ”๋€๋‹ค. ์ฆ‰, ๊บผ์ ธ ์žˆ๋Š” ์ „๊ตฌ๋Š” ์ผœ์ง€๊ณ , ์ผœ์ ธ ์žˆ๋Š” ์ „๊ตฌ๋Š” ๊บผ์ง€๊ฒŒ ๋œ๋‹ค. 1๋ฒˆ ์Šค์œ„์น˜๋ฅผ ๋ˆŒ๋ €์„ ๊ฒฝ์šฐ์—๋Š” 1, 2๋ฒˆ ์ „๊ตฌ์˜ ์ƒํƒœ๊ฐ€ ๋ฐ”๋€Œ๊ณ , N๋ฒˆ ์Šค์œ„์น˜๋ฅผ ๋ˆŒ๋ €์„ ๊ฒฝ์šฐ์—๋Š” N-1, N๋ฒˆ ์ „๊ตฌ์˜ ์ƒํƒœ๊ฐ€ ๋ฐ”๋€๋‹ค. N๊ฐœ์˜ ์ „๊ตฌ๋“ค์˜ ํ˜„์žฌ ์ƒํƒœ์™€ ์šฐ๋ฆฌ๊ฐ€ ๋งŒ๋“ค๊ณ ์ž ํ•˜๋Š” ์ƒํƒœ๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๊ทธ ์ƒํƒœ๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ์Šค์œ„์น˜๋ฅผ ์ตœ์†Œ ๋ช‡ ๋ฒˆ ๋ˆ„๋ฅด๋ฉด ๋˜๋Š”์ง€ ์•Œ์•„๋‚ด๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ์ž์—ฐ์ˆ˜ N(2 ≤ N ≤ 100,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ ์ค„์—๋Š” ์ „๊ตฌ๋“ค์˜ ํ˜„์žฌ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ˆซ์ž N๊ฐœ๊ฐ€ ๊ณต๋ฐฑ ์—†์ด ์ฃผ..