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

๐Ÿ’ช๐Ÿป์ฝ”๋”ฉํ…Œ์ŠคํŠธ/๋ฐฑ์ค€ & ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

(5)
[๊ตฌํ˜„, ์‹œ๋ฎฌ๋ ˆ์ด์…˜] 20061 : ๋ชจ๋…ธ๋ฏธ๋…ธ๋„๋ฏธ๋…ธ 2 python ๐Ÿ“„ 20061 : ๋ชจ๋…ธ๋ฏธ๋…ธ๋„๋ฏธ๋…ธ 2 ๐Ÿ“„ www.acmicpc.net/problem/20061 20061๋ฒˆ: ๋ชจ๋…ธ๋ฏธ๋…ธ๋„๋ฏธ๋…ธ 2 ๋ชจ๋…ธ๋ฏธ๋…ธ๋„๋ฏธ๋…ธ๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ์ƒ๊ธด ๋ณด๋“œ์—์„œ ์ง„ํ–‰๋˜๋Š” ๊ฒŒ์ž„์ด๋‹ค. ๋ณด๋“œ๋Š” ๋นจ๊ฐ„์ƒ‰ ๋ณด๋“œ, ํŒŒ๋ž€์ƒ‰ ๋ณด๋“œ, ์ดˆ๋ก์ƒ‰ ๋ณด๋“œ๊ฐ€ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ๋ถ™์–ด์žˆ๋Š” ํ˜•ํƒœ์ด๋‹ค. ๊ฒŒ์ž„์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์ขŒํ‘œ (x, y)์—์„œ x๋Š” ํ–‰, www.acmicpc.net ๐Ÿค” ๋ฌธ์ œ ํ’€์ด ๐Ÿค” "๊ตฌํ˜„"๊ณผ "์‹œ๋ฎฌ๋ ˆ์ด์…˜"์„ ํ‘ธ๋Š” ๋ฐฉ๋ฒ•์€ ์ž์‹ ๊ฐ์ธ ๊ฒƒ ๊ฐ™๋‹ค. ๋ฌธ์ œ ์กฐ๊ฑด์ด ๊ต‰์žฅํžˆ ๋ณต์žกํ•˜๊ณ  ๊ตฌํ˜„ํ•˜์ž๋‹ˆ ๊ท€์ฐฎ์€ ๋ถ€๋ถ„๋“ค์ด ๋งŽ์ด ๋ณด์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ฌธ์ œ ํ’€์ด๋ฅผ ํ•˜๊ธฐ ์‹ซ์–ด์ง€๊ฒŒ ๋œ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Ÿฐ ๊ตฌํ˜„ ๋ฌธ์ œ๋ฅผ ๋งŽ์ด ํ’€๋‹ค๋ณด๋ฉด ๊ตฌํ˜„์— ๋Œ€ํ•ด ๋‘๋ ค์›€์ด ์‚ฌ๋ผ์ ธ์„œ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์‹œ๋„๋ฅผ ์‰ฝ๊ฒŒ ํ•ด๋ณผ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ์ด ๋ฌธ์ œ์—์„œ ์–ด๋ ค์› ๋˜ ์ ์€ fill_block()ํ•จ์ˆ˜์—์„œ๋Š” '..
[DP] ๋ฐฑ์ค€ 11058 ํฌ๋ฆฌ๋ณด๋“œ python ๐Ÿ“„ ๋ฐฑ์ค€ 11058 ํฌ๋ฆฌ๋ณด๋“œ ๐Ÿ“„ www.acmicpc.net/problem/11058 11058๋ฒˆ: ํฌ๋ฆฌ๋ณด๋“œ N = 3์ธ ๊ฒฝ์šฐ์— A, A, A๋ฅผ ๋ˆŒ๋Ÿฌ A 3๊ฐœ๋ฅผ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค. N = 7์ธ ๊ฒฝ์šฐ์—๋Š” A, A, A, Ctrl-A, Ctrl-C, Ctrl-V, Ctrl-V๋ฅผ ๋ˆŒ๋Ÿฌ 9๊ฐœ๋ฅผ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค. N = 11์ธ ๊ฒฝ์šฐ์—๋Š” A, A, A, Ctrl-A, Ctrl-C, Ctrl-V, Ctrl-V, Ctrl-A, Ctrl-C, Ctrl www.acmicpc.net ๐Ÿค” ๋ฌธ์ œ ํ’€์ด ๐Ÿค” ๋ฒ„ํŠผ 1์„ ๋ˆ„๋ฅด๋Š” ๊ฒฝ์šฐ dp[n] = dp[n - 1] + 1 ๋ฒ„ํŠผ 2, 3์„ ๋ˆ„๋ฅด๋Š” ๊ฒฝ์šฐ๋Š” ํฌ๊ธฐ๊ฐ€ ์ฆ๊ฐ€ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ตœ๋Œ“๊ฐ’์ด ๋  ์ˆ˜ ์—†๋‹ค. ๋ฒ„ํŠผ 4๋ฅผ ๋ˆ„๋ฅด๋Š” ๊ฒฝ์šฐ๋Š” ctrl + A, ctrl + C์ธ 2, 3๋ฒˆ ๋ฒ„ํŠผ์ด ์„ ํ–‰๋˜์–ด..
[BFS, ๊ตฌํ˜„] ๋ฐฑ์ค€ 16236 ์•„๊ธฐ ์ƒ์–ด python ๐Ÿ“„ ๋ฐฑ์ค€ 16236 ์•„๊ธฐ ์ƒ์–ด python ๐Ÿ“„ www.acmicpc.net/problem/16236 16236๋ฒˆ: ์•„๊ธฐ ์ƒ์–ด N×N ํฌ๊ธฐ์˜ ๊ณต๊ฐ„์— ๋ฌผ๊ณ ๊ธฐ M๋งˆ๋ฆฌ์™€ ์•„๊ธฐ ์ƒ์–ด 1๋งˆ๋ฆฌ๊ฐ€ ์žˆ๋‹ค. ๊ณต๊ฐ„์€ 1×1 ํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐํ˜• ์นธ์œผ๋กœ ๋‚˜๋ˆ„์–ด์ ธ ์žˆ๋‹ค. ํ•œ ์นธ์—๋Š” ๋ฌผ๊ณ ๊ธฐ๊ฐ€ ์ตœ๋Œ€ 1๋งˆ๋ฆฌ ์กด์žฌํ•œ๋‹ค. ์•„๊ธฐ ์ƒ์–ด์™€ ๋ฌผ๊ณ ๊ธฐ๋Š” ๋ชจ๋‘ ํฌ๊ธฐ๋ฅผ ๊ฐ€ www.acmicpc.net ๐Ÿค” ๋ฌธ์ œ ํ’€์ด ๐Ÿค” ์ฒซ๋ฒˆ์งธ ์‹œ๋„์—์„œ ์ •ํ™•ํžˆ ๊ตฌํ˜„ํ•˜์ง€ ๋ชปํ–ˆ๊ณ  ์ธํ„ฐ๋„ท์˜ ๋ธ”๋กœ๊ทธ๋ฅผ ์ฐธ๊ณ ํ•˜์—ฌ ์ฝ”๋“œ๋ฅผ ์™„์„ฑํ•˜์˜€๋‹ค. ๋‚ด๊ฐ€ ์ด ๋ฌธ์ œ์—์„œ ๋†“์นœ ํฌ์ธํŠธ๋Š” ์ฒ˜์Œ ์•„๊ธฐ์ƒ์–ด์˜ ์œ„์น˜๋ฅผ ์ €์žฅํ•œ ํ›„ ๋งต์—์„œ ์•„๊ธฐ์ƒ์–ด ์œ„์น˜๋ฅผ 0์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ์ง€ ์•Š์•˜๋‹ค. (ํฌ๊ธฐ๊ฐ€ 9์ธ ์ƒ์–ด๋กœ ์ธ์‹ํ•˜๊ฒŒ ๋จ) BFS๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” queue์˜ ์†์„ฑ์„ ์ด์šฉํ•ด ๋จน์„ ์ˆ˜ ์žˆ๋Š” ์ƒ์–ด๋ฅผ ์ฐพ์€ ํšŸ์ˆ˜๊นŒ์ง€๋งŒ ํƒ์ƒ‰์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ํ•œ๋‹ค...
[DP] ๋ฐฑ์ค€ 1699 ์ œ๊ณฑ์ˆ˜์˜ ํ•ฉ python ๐Ÿ“„ ๋ฐฑ์ค€ 1699 ์ œ๊ณฑ์ˆ˜์˜ ํ•ฉ ๐Ÿ“„ www.acmicpc.net/problem/1699 1699๋ฒˆ: ์ œ๊ณฑ์ˆ˜์˜ ํ•ฉ ์–ด๋–ค ์ž์—ฐ์ˆ˜ N์€ ๊ทธ๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ œ๊ณฑ์ˆ˜๋“ค์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 11=32+12+12(3๊ฐœ ํ•ญ)์ด๋‹ค. ์ด๋Ÿฐ ํ‘œํ˜„๋ฐฉ๋ฒ•์€ ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ๋  ์ˆ˜ ์žˆ๋Š”๋ฐ, 11์˜ ๊ฒฝ์šฐ 11=22+22+12+12+12(5๊ฐœ ํ•ญ)๋„ ๊ฐ€๋Šฅํ•˜๋‹ค www.acmicpc.net ๐Ÿค” ๋ฌธ์ œ ํ’€์ด ๐Ÿค” ์ˆซ์ž๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ ์ œ๊ณฑ์ˆ˜์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋Š” ์ตœ์†Œ ํ•ญ์˜ ๊ฐฏ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ๋จผ์ € ๋ชจ๋“  ์ˆซ์ž๋Š” 1์˜ ์ œ๊ณฑ์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ์œผ๋ฉฐ ๊ทธ ๋•Œ ํ•ญ์˜ ๊ฐฏ์ˆ˜๋Š” ์ˆซ์ž n์ผ ๋•Œ n๊ฐœ ์ด๋‹ค. ์ด์ œ 1๋ถ€ํ„ฐ n๊นŒ์ง€ ์ˆซ์ž๋ฅผ ์ฆ๊ฐ€์‹œ์ผœ๊ฐ€๋ฉด์„œ ๊ฐ๊ฐ์˜ ์ˆซ์ž์— ๋Œ€ํ•ด ์ตœ์†Œํ•ญ์˜ ๊ฐฏ์ˆ˜๋ฅผ ๊ตฌํ•ด๋ณด์ž. 1์ผ ๋•Œ๋Š” 1๊ฐœ์ด๋‹ค. 2์ผ ๋•Œ๋Š” 1^2, 1^2 2๊ฐœ์ด..
[DP] ๋ฐฑ์ค€ 2133 ํƒ€์ผ์ฑ„์šฐ๊ธฐ python ๐Ÿ“„ ๋ฐฑ์ค€ 2133 ํƒ€์ผ์ฑ„์šฐ๊ธฐ ๐Ÿ“„ www.acmicpc.net/problem/2133 2133๋ฒˆ: ํƒ€์ผ ์ฑ„์šฐ๊ธฐ 3×N ํฌ๊ธฐ์˜ ๋ฒฝ์„ 2×1, 1×2 ํฌ๊ธฐ์˜ ํƒ€์ผ๋กœ ์ฑ„์šฐ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•ด๋ณด์ž. www.acmicpc.net ๐Ÿค” ๋ฌธ์ œ ํ’€์ด ๐Ÿค” n = 2์ผ ๋•Œ, 2 x 1, 1 x 2ํƒ€์ผ๋กœ 3 x 2 ํƒ€์ผ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฐฏ์ˆ˜๋ฅผ ์„ธ์–ด๋ณด๋ฉด 3๊ฐ€์ง€ ๊ฒฝ์šฐ์˜ ์ˆ˜๊ฐ€ ๋‚˜์˜จ๋‹ค. n = 3์ผ ๋•Œ, ํ™€์ˆ˜์ผ๋•Œ๋Š” ์–ด๋– ํ•œ ํƒ€์ผ๋„ ๋งŒ๋“ค ์ˆ˜ ์—†๋‹ค. n = 4์ผ ๋•Œ๋Š” 2๊ฐ€์ง€์˜ ์ƒˆ๋กœ์šด ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค. n = 6์ผ ๋•Œ ๋˜ํ•œ 2๊ฐ€์ง€์˜ ์ƒˆ๋กœ์šด ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค. ์ด๋ ‡๊ฒŒ ์ง์ˆ˜๋กœ ์ฆ๊ฐ€ํ•˜๋Š” n์—์„œ๋Š” ๋ชจ๋‘ 2๊ฐ€์ง€์˜ ์ƒˆ๋กœ์šด ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค. dp[0] = 1, ์•„๋ฌด๊ฒƒ๋„ ์—†๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ ํ•˜๋‚˜ dp[2] = 3, 3๊ฐ€์ง€ ๊ฒฝ์šฐ์˜..

๋ฐ˜์‘ํ˜•