C++

โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„/Dynamic Programming

[๋™์  ๊ณ„ํš๋ฒ• 1] [C++] 2579๋ฒˆ. ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ

www.acmicpc.net/problem/2579 2579๋ฒˆ: ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ ๊ฒŒ์ž„์€ ๊ณ„๋‹จ ์•„๋ž˜ ์‹œ์ž‘์ ๋ถ€ํ„ฐ ๊ณ„๋‹จ ๊ผญ๋Œ€๊ธฐ์— ์œ„์น˜ํ•œ ๋„์ฐฉ์ ๊นŒ์ง€ ๊ฐ€๋Š” ๊ฒŒ์ž„์ด๋‹ค. ๊ณผ ๊ฐ™์ด ๊ฐ๊ฐ์˜ ๊ณ„๋‹จ์—๋Š” ์ผ์ •ํ•œ ์ ์ˆ˜๊ฐ€ ์“ฐ์—ฌ ์žˆ๋Š”๋ฐ ๊ณ„๋‹จ์„ ๋ฐŸ์œผ๋ฉด ๊ทธ ๊ณ„๋‹จ์— ์“ฐ์—ฌ ์žˆ๋Š” ์  www.acmicpc.net ์ž…๋ ฅ ์ž…๋ ฅ์˜ ์ฒซ์งธ ์ค„์— ๊ณ„๋‹จ์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ œ์ผ ์•„๋ž˜์— ๋†“์ธ ๊ณ„๋‹จ๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ ๊ฐ ๊ณ„๋‹จ์— ์“ฐ์—ฌ ์žˆ๋Š” ์ ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ณ„๋‹จ์˜ ๊ฐœ์ˆ˜๋Š” 300์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๊ณ , ๊ณ„๋‹จ์— ์“ฐ์—ฌ ์žˆ๋Š” ์ ์ˆ˜๋Š” 10,000์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋‹ค. ์ถœ๋ ฅ ์ฒซ์งธ ์ค„์— ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ ๊ฒŒ์ž„์—์„œ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ์ด ์ ์ˆ˜์˜ ์ตœ๋Œ“๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• dp ๋ฌธ์ œ์ด๋ฏ€๋กœ ์ ํ™”์‹์„ ์ฐพ์•„์•ผํ•œ๋‹ค. ๋„์ฐฉ์ง€์ ์— ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ ์–ด๋–ป๊ฒŒ ๋ ๊นŒ? ๋‘ ..

โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„/Dynamic Programming

[๋™์  ๊ณ„ํš๋ฒ• 1] [C++] 1932๋ฒˆ. ์ •์ˆ˜ ์‚ผ๊ฐํ˜•

www.acmicpc.net/problem/1932 1932๋ฒˆ: ์ •์ˆ˜ ์‚ผ๊ฐํ˜• ์ฒซ์งธ ์ค„์— ์‚ผ๊ฐํ˜•์˜ ํฌ๊ธฐ n(1 โ‰ค n โ‰ค 500)์ด ์ฃผ์–ด์ง€๊ณ , ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ n+1๋ฒˆ์งธ ์ค„๊นŒ์ง€ ์ •์ˆ˜ ์‚ผ๊ฐํ˜•์ด ์ฃผ์–ด์ง„๋‹ค. www.acmicpc.net ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ์‚ผ๊ฐํ˜•์˜ ํฌ๊ธฐ n(1 โ‰ค n โ‰ค 500)์ด ์ฃผ์–ด์ง€๊ณ , ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ n+1๋ฒˆ์งธ ์ค„๊นŒ์ง€ ์ •์ˆ˜ ์‚ผ๊ฐํ˜•์ด ์ฃผ์–ด์ง„๋‹ค. ์ถœ๋ ฅ ์ฒซ์งธ ์ค„์— ํ•ฉ์ด ์ตœ๋Œ€๊ฐ€ ๋˜๋Š” ๊ฒฝ๋กœ์— ์žˆ๋Š” ์ˆ˜์˜ ํ•ฉ์„ ์ถœ๋ ฅํ•œ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ์ด์ „ ๋ฌธ์ œ์˜€๋˜ RGB ๊ฑฐ๋ฆฌ ๋ฌธ์ œ์™€ ์œ ์‚ฌํ•˜๋‹ค. dp๋ฅผ ์ด์šฉํ•  ๊ฒƒ์ด๋ฏ€๋กœ ์ ํ™”์‹, ์ฆ‰ ๊ทœ์น™์„ ์ฐพ์•„๋‚ด์•ผ ํ•œ๋‹ค. ์ฒซ๋ฒˆ์งธ ํ–‰์€ ๋ฌด์กฐ๊ฑด ์ž๊ธฐ ์ž์‹ ์„ ํƒํ•˜๋ฏ€๋กœ ์ œ์™ธ ๋‘๋ฒˆ์งธ ํ–‰๋ถ€ํ„ฐ๋Š” i) ๊ฐ€์žฅ ์ขŒ์ธก ์›์†Œ์˜ ๊ฒฝ์šฐ ์ด์ „ ํ–‰์˜ ๊ฐ€์žฅ ์ขŒ์ธก ์›์†Œ ii) ๊ฐ€์žฅ ์šฐ์ธก ์›์†Œ์˜ ๊ฒฝ์šฐ ์ด์ „ ํ–‰์˜ ๊ฐ€์žฅ ์šฐ์ธก ์›์†Œ๋ฅผ ๋ฌด..

โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„/Dynamic Programming

[๋™์  ๊ณ„ํš๋ฒ• 1] [C++] 1149๋ฒˆ. RGB ๊ฑฐ๋ฆฌ

www.acmicpc.net/problem/1149 1149๋ฒˆ: RGB๊ฑฐ๋ฆฌ ์ฒซ์งธ ์ค„์— ์ง‘์˜ ์ˆ˜ N(2 โ‰ค N โ‰ค 1,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ ์ง‘์„ ๋นจ๊ฐ•, ์ดˆ๋ก, ํŒŒ๋ž‘์œผ๋กœ ์น ํ•˜๋Š” ๋น„์šฉ์ด 1๋ฒˆ ์ง‘๋ถ€ํ„ฐ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ฃผ์–ด์ง„๋‹ค. ์ง‘์„ ์น ํ•˜๋Š” ๋น„์šฉ์€ 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ www.acmicpc.net ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ์ง‘์˜ ์ˆ˜ N(2 โ‰ค N โ‰ค 1,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ ์ง‘์„ ๋นจ๊ฐ•, ์ดˆ๋ก, ํŒŒ๋ž‘์œผ๋กœ ์น ํ•˜๋Š” ๋น„์šฉ์ด 1๋ฒˆ ์ง‘๋ถ€ํ„ฐ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ฃผ์–ด์ง„๋‹ค. ์ง‘์„ ์น ํ•˜๋Š” ๋น„์šฉ์€ 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค. ์ถœ๋ ฅ ์ฒซ์งธ ์ค„์— ๋ชจ๋“  ์ง‘์„ ์น ํ•˜๋Š” ๋น„์šฉ์˜ ์ตœ์†Ÿ๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ์ด ๋ฌธ์ œ์˜ ์‹œ๊ฐ„ ์ œํ•œ์€ 0.5์ดˆ๋กœ ์งง๋‹ค. ์ค‘์ฒฉ ๋ฐ˜๋ณต๋ฌธ์„ ์ด์šฉํ•œ ๋ธŒ๋ฃจํŠธ ํฌ์Šค์˜ ๋ฐฉ๋ฒ•..

โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„/Dynamic Programming

[๋™์  ๊ณ„ํš๋ฒ• 1] [C++] 9461๋ฒˆ. ํŒŒ๋„๋ฐ˜ ์ˆ˜์—ด

www.acmicpc.net/problem/9461 9461๋ฒˆ: ํŒŒ๋„๋ฐ˜ ์ˆ˜์—ด ์˜ค๋ฅธ์ชฝ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ์‚ผ๊ฐํ˜•์ด ๋‚˜์„  ๋ชจ์–‘์œผ๋กœ ๋†“์—ฌ์ ธ ์žˆ๋‹ค. ์ฒซ ์‚ผ๊ฐํ˜•์€ ์ •์‚ผ๊ฐํ˜•์œผ๋กœ ๋ณ€์˜ ๊ธธ์ด๋Š” 1์ด๋‹ค. ๊ทธ ๋‹ค์Œ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ณผ์ •์œผ๋กœ ์ •์‚ผ๊ฐํ˜•์„ ๊ณ„์† ์ถ”๊ฐ€ํ•œ๋‹ค. ๋‚˜์„ ์—์„œ ๊ฐ€์žฅ ๊ธด ๋ณ€์˜ www.acmicpc.net ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์˜ ๊ฐœ์ˆ˜ T๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋Š” ํ•œ ์ค„๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , N์ด ์ฃผ์–ด์ง„๋‹ค. (1 โ‰ค N โ‰ค 100) ์ถœ๋ ฅ ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋งˆ๋‹ค P(N)์„ ์ถœ๋ ฅํ•œ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ์ฒ˜์Œ ๋“ค์–ด๋ณด๋Š” ์ƒˆ๋กœ์šด ์ˆ˜์—ด์ด์ง€๋งŒ ๊ทธ ๊ทœ์น™์€ ํ”ผ๋ณด๋‚˜์น˜์™€ ๋น„์Šทํ•˜๋‹ค. ํ”ผ๋ณด๋‚˜์น˜์˜ ์ ํ™”์‹์ด f(n) = f(n-1) + f(n-2) ์˜€๋‹ค๋ฉด N 1 2 3 4 5 6 7 8 9 P(N) 1 1 1 2 2 3 4 5 7 ํŒŒ๋„๋ฐ˜์˜ ์ ..

kodo_o
'C++' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก (2 Page)