๋ฐฑ์ค€: 16194 ์นด๋“œ ๊ตฌ๋งคํ•˜๊ธฐ 2

๋ฌธ์ œ 16194๋ฒˆ: ์นด๋“œ ๊ตฌ๋งคํ•˜๊ธฐ 2 ์ฒซ์งธ ์ค„์— ๋ฏผ๊ทœ๊ฐ€ ๊ตฌ๋งคํ•˜๋ ค๊ณ  ํ•˜๋Š” ์นด๋“œ์˜ ๊ฐœ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. (1 ≤ N ≤ 1,000) ๋‘˜์งธ ์ค„์—๋Š” Pi๊ฐ€ P1๋ถ€ํ„ฐ PN๊นŒ์ง€ ์ˆœ์„œ๋Œ€๋กœ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ Pi ≤ 10,000) www.acmicpc.net ๋ฌธ์ œ ํ’€์ด ์นด๋“œ ๊ตฌ๋งคํ•˜๊ธฐ์—์„œ๋Š” ๊ตฌ๋งคํ•˜๊ณ ์ž ํ•˜๋Š” ์นด๋“œ๋ฅผ ์ตœ๋Œ€๊ฐ’์œผ๋กœ ๊ตฌ๋งคํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค. ์ด์™€ ๋‹ฌ๋ฆฌ ์นด๋“œ ๊ตฌ๋งคํ•˜๊ธฐ 2๋Š” ๊ฐ€์žฅ ์ตœ์†Œ ๊ฐ’์œผ๋กœ ์นด๋“œ๋ฅผ ๊ตฌ๋งคํ•  ๊ฒฝ์šฐ์— ๋ฐœ์ƒํ•˜๋Š” ๊ธˆ์•ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ์นด๋“œ ๊ตฌ๋งคํ•˜๊ธฐ์™€ ๋™์ผํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ํ’€๋ฉฐ, ์•ฝ๊ฐ„์˜ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๋ฉด ์ด ๋ฌธ์ œ๋„ ์‰ฝ๊ฒŒ ํ’€ ์ˆ˜ ์žˆ๋‹ค. ์ฝ”๋“œ if __name__ == '__main__': N = int(input()) card = [0] + list(map(int, input().split())) memo = [0]..

๋ฐฑ์ค€: 11052 ์นด๋“œ ๊ตฌ๋งคํ•˜๊ธฐ

๋ฌธ์ œ 11052๋ฒˆ: ์นด๋“œ ๊ตฌ๋งคํ•˜๊ธฐ ์ฒซ์งธ ์ค„์— ๋ฏผ๊ทœ๊ฐ€ ๊ตฌ๋งคํ•˜๋ ค๊ณ  ํ•˜๋Š” ์นด๋“œ์˜ ๊ฐœ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. (1 ≤ N ≤ 1,000) ๋‘˜์งธ ์ค„์—๋Š” Pi๊ฐ€ P1๋ถ€ํ„ฐ PN๊นŒ์ง€ ์ˆœ์„œ๋Œ€๋กœ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ Pi ≤ 10,000) www.acmicpc.net ๋ฌธ์ œ ํ’€์ด ์ด ๋ฌธ์ œ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ํ’€๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ฉ”๋ชจ์ด์ œ์ด์…˜(Memoization)์„ ํ™œ์šฉํ•˜์—ฌ์•ผ ํ•œ๋‹ค. ๋ฌธ์ œ์˜ ์˜ˆ์ œ์™€ ๊ฐ™์ด 1 5 6 7์ด ์ž…๋ ฅ๋˜๋Š” ๊ฒฝ์šฐ ์นด๋“œ 3๊ฐœ ๊นŒ์ง€ ๊ตฌ๋งคํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ์นด๋“œ 1๊ฐœ ๊ตฌ๋งค : 1๊ฐœ ๋“ค์–ด์žˆ๋Š” ์นด๋“œ ํŒฉ ์นด๋“œ 2๊ฐœ ๊ตฌ๋งค : (1๊ฐœ ๋“ค์–ด์žˆ๋Š” ์นด๋“œ ํŒฉ) * 2, 2๊ฐœ ๋“ค์–ด์žˆ๋Š” ์นด๋“œ ํŒฉ ์นด๋“œ 3๊ฐœ ๊ตฌ๋งค : (1๊ฐœ ๋“ค์–ด์žˆ๋Š” ์นด๋“œ ํŒฉ) * 3, 2๊ฐœ ๋“ค์–ด ์žˆ๋Š” ์นด๋“œ ํŒฉ + 1๊ฐœ ๋“ค์–ด ์žˆ๋Š” ์นด๋“œ๋ฐฑ, 3๊ฐœ ๋“ค์–ด ์žˆ๋Š” ์นด๋“œํŒฉ ์ฆ‰ ..

๋ฐฑ์ค€: 11727 2xn ํƒ€์ผ๋ง 2

๋ฌธ์ œ 11727๋ฒˆ: 2×n ํƒ€์ผ๋ง 2 2×n ์ง์‚ฌ๊ฐํ˜•์„ 1×2, 2×1๊ณผ 2×2 ํƒ€์ผ๋กœ ์ฑ„์šฐ๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์•„๋ž˜ ๊ทธ๋ฆผ์€ 2×17 ์ง์‚ฌ๊ฐํ˜•์„ ์ฑ„์šด ํ•œ๊ฐ€์ง€ ์˜ˆ์ด๋‹ค. www.acmicpc.net ๋ฌธ์ œ ํ’€์ด ์ด ๋ฌธ์ œ๋Š” 2 x n ํƒ€์ผ๋ง ๋ฌธ์ œ์—์„œ 2 x 2 ํƒ€์ผ์ด ์ถ”๊ฐ€ ๋˜์–ด, ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํƒ€์ผ์ด 2 x 1, 1 x 2, 2 x 2๋กœ 3๊ฐœ์ธ ๊ฒฝ์šฐ์— 2 x n์˜ ๊ณต๊ฐ„์— ํƒ€์ผ์„ ๋ถ™์ผ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ๊ทธ๋ฆผ 1์„ ๋ณด๋ฉด, n์ด ์ฆ๊ฐ€ํ•จ์— ๋”ฐ๋ผ 1, 3, 5, 11, 21๊ณผ ๊ฐ™์€ ๊ทœ์น™์„ ๋ณด์ด๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ด๋ฅผ ์‹์œผ๋กœ ๋‚˜ํƒ€๋‚ด๋ฉด `f(n) = f(n - 1) + 2 * f(n - 2)`๊ฐ€ ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ํ•ด๋‹น ์‹์„ ์ฝ”๋“œ๋กœ ์ž‘์„ฑํ•˜๋ฉด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. ์ฝ”๋“œ fro..

๋ฐฑ์ค€: 11726 2xn ํƒ€์ผ๋ง

๋ฌธ์ œ 11726๋ฒˆ: 2×n ํƒ€์ผ๋ง 2×n ํฌ๊ธฐ์˜ ์ง์‚ฌ๊ฐํ˜•์„ 1×2, 2×1 ํƒ€์ผ๋กœ ์ฑ„์šฐ๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์•„๋ž˜ ๊ทธ๋ฆผ์€ 2×5 ํฌ๊ธฐ์˜ ์ง์‚ฌ๊ฐํ˜•์„ ์ฑ„์šด ํ•œ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์˜ ์˜ˆ์ด๋‹ค. www.acmicpc.net ๋ฌธ์ œ ํ’€์ด ์„ธ๋กœ ํƒ€์ผ(2 x 1)๊ณผ ๊ฐ€๋กœ ํƒ€์ผ(1 x 2) ํƒ€์ผ๋กœ n์ด ์ž…๋ ฅ๋  ๊ฒฝ์šฐ ํƒ€์ผ์„ ๋ถ™์ผ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. n์— ๋”ฐ๋ผ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ ๊ฒฝ์šฐ์˜ ์ˆ˜๋Š” ํฌ๊ฒŒ 3๊ฐ€์ง€ ์ด๋‹ค. ๋ชจ๋‘ ์„ธ๋กœ ํƒ€์ผ๋กœ ๊ตฌ์„ฑ ๋˜๋Š” ๊ฒฝ์šฐ ๋ชจ๋‘ ๊ฐ€๋กœ ํƒ€์ผ๋กœ ๊ตฌ์„ฑ ๋˜๋Š” ๊ฒฝ์šฐ ๊ฐ€๋กœ, ์„ธ๋กœ ํƒ€์ผ์ด ํ˜ผํ•ฉ๋˜์–ด ๊ตฌ์„ฑ๋˜๋Š” ๊ฒฝ์šฐ ํƒ€์ผ์„ ๋ถ™์ผ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋Š” ๊ทธ๋ฆผ 1๊ณผ ๊ฐ™๋‹ค. n์— ๋”ฐ๋ฅธ ๊ทœ์น™์„ ์ฐพ์•„๋ณด๋ฉด n์ด ์ฆ๊ฐ€ํ•จ์— ๋”ฐ๋ผ 1, 2, 3, 5, 8, 13๋กœ ์ฆ๊ฐ€ํ•˜๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ์ด๋ฅผ ์‹์œผ๋กœ ..

๋ฐฑ์ค€: 1463 1๋กœ ๋งŒ๋“ค๊ธฐ

๋ฌธ์ œ 1463๋ฒˆ: 1๋กœ ๋งŒ๋“ค๊ธฐ ์ฒซ์งธ ์ค„์— 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 106๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. www.acmicpc.net ๋ฌธ์ œ ํ’€์ด ๋ฌธ์ œ๋Š” ํŠน์ • ์ˆ˜๊ฐ€ 1์ด ๋˜๊ธฐ ์œ„ํ•ด์„œ 2, 3์œผ๋กœ ๋‚˜๋ˆ„๊ฑฐ๋‚˜ -1์„ ํ•˜์˜€์„ ๋•Œ ์ตœ์†Œ ํšŸ์ˆ˜๋กœ 1์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ๋Š” ๊ฒƒ์ด๋‹ค. ํšจ์œจ์ ์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ’€๊ธฐ ์œ„ํ•ด ๋ฉ”๋ชจ์ด์ œ์ด์…˜(memoization)์„ ํ†ตํ•ด ๋ฌธ์ œ๋ฅผ ์ ‘๊ทผํ•˜๋ฉด ์‹œ๊ฐ„์ดˆ๊ณผ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค์ง€ ์•Š๊ณ  ๋ฌธ์ œ๋ฅผ ํ’€ ์ˆ˜ ์žˆ๋‹ค. ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š” ๋ฐฉ๋ฒ•์€ ๊ทธ๋ฆผ 1๊ณผ ๊ฐ™๋‹ค. ๊ทธ๋ฆผ 1์€ 10์ธ ๊ฒฝ์šฐ์— ๋ฉ”๋ชจ์ด์ œ์ด์…˜์„ ํ†ตํ•ด ๊ฐ’์„ ์ฐพ๋Š” ๊ณผ์ •์ด๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•˜์—ฌ ์นด์šดํŠธ ๊ฐ’์„ ๋ˆ„์ ์‹œ์ผœ๊ฐ€๋Š” ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•œ๋‹ค. ๊ฐ ์ธ๋ฑ์Šค๋Š” ์‹ค์ œ ๊ฐ’์„ ์˜๋ฏธํ•œ๋‹ค. (1 ~ N) ์ž…๋ ฅ๋œ ๊ฐ’๊ณผ ์ธ๋ฑ์Šค๋ฅผ ์ผ์น˜์‹œํ‚ค๊ธฐ ์œ„ํ•ด 0๋ฒˆ ์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค. ์ž…๋ ฅ ๊ฐ’์ด 1์ธ..

๋ฐฑ์ค€: 11576 Base Conversion

๋ฌธ์ œ 11576๋ฒˆ: Base Conversion ํƒ€์ž„๋จธ์‹ ์„ ๊ฐœ๋ฐœํ•˜๋Š” ์ •์ด๋Š” ์˜ค๋žœ ๋…ธ๋ ฅ ๋์— ํƒ€์ž„๋จธ์‹ ์„ ๊ฐœ๋ฐœํ•˜๋Š”๋ฐ ์„ฑ๊ณตํ•˜์˜€๋‹ค. ๋ฏธ๋ž˜๊ฐ€ ๊ถ๊ธˆํ•œ ์ •์ด๋Š” ์ž์‹ ์ด ๊ฐœ๋ฐœํ•œ ํƒ€์ž„๋จธ์‹ ์„ ์ด์šฉํ•˜์—ฌ 500๋…„ ํ›„์˜ ์„ธ๊ณ„๋กœ ์—ฌํ–‰์„ ๋– ๋‚˜๊ฒŒ ๋˜์—ˆ๋‹ค. 500๋…„ ํ›„์˜ www.acmicpc.net ๋ฌธ์ œํ’€์ด ์ด ๋ฌธ์ œ๋Š” A์ง„๋ฒ•์„ B ์ง„๋ฒ•์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ์•ž์„œ ๋‹ค๋ฃฌ 2745 ์ง„๋ฒ• ๋ณ€ํ™˜, 11005 ์ง„๋ฒ• ๋ณ€ํ™˜ 2 ๋ฌธ์ œ ์ฒ˜๋Ÿผ A ์ง„๋ฒ•์„ 10์ง„๋ฒ•์œผ๋กœ ๋ณ€ํ™˜ ํ›„์— ๋‹ค์‹œ B ์ง„๋ฒ•์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋„๋กํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ’€์—ˆ๋‹ค. ์•ž์˜ ๋ฌธ์ œ๋“ค์„ ์ž˜ ํ’€์—ˆ๋‹ค๋ฉด ์ด ๋ฌธ์ œ๋Š” ๋”์šฑ ์‰ฝ๊ฒŒ ํ’€ ์ˆ˜ ์žˆ๋‹ค. ์ฝ”๋“œ if __name__ == "__main__": a, b = map(int, input().split()) m = int(input()) nums = list(map..

๋ฐฑ์ค€: 11005 ์ง„๋ฒ• ๋ณ€ํ™˜ 2

๋ฌธ์ œ 11005๋ฒˆ: ์ง„๋ฒ• ๋ณ€ํ™˜ 2 10์ง„๋ฒ• ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. ์ด ์ˆ˜๋ฅผ B์ง„๋ฒ•์œผ๋กœ ๋ฐ”๊ฟ” ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. 10์ง„๋ฒ•์„ ๋„˜์–ด๊ฐ€๋Š” ์ง„๋ฒ•์€ ์ˆซ์ž๋กœ ํ‘œ์‹œํ•  ์ˆ˜ ์—†๋Š” ์ž๋ฆฌ๊ฐ€ ์žˆ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์•ŒํŒŒ๋ฒณ ๋Œ€๋ฌธ์ž๋ฅผ ๏ฟฝ๏ฟฝ www.acmicpc.net ๋ฌธ์ œ ํ’€์ด ์ง„๋ฒ• ๋ณ€ํ™˜ ๋ฌธ์ œ์—์„œ 10์ง„๋ฒ•์˜ ์ˆ˜๋ฅผ ๋‹ค์‹œ ํ•ด๋‹น ์ง„๋ฒ•์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. 10์ง„๋ฒ•์˜ ์ˆ˜๋ฅผ ๋‹ค๋ฅธ ์ง„๋ฒ•์œผ๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ˆ˜๊ฐ€ 0์ด ๋  ๋•Œ ๊นŒ์ง€ ๋‚˜๋ˆˆ ํ›„ ๊ฐ ๋‚˜๋จธ์ง€๋“ค์„ ๊ธฐ๋กํ•ด๋‘๋ฉด, ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ 10 ๋ณด๋‹ค ํฐ ์ˆ˜์˜ ๊ฒฝ์šฐ A - Z ๋กœ ๋ณ€ํ™˜ํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค. ์ฝ”๋“œ if __name__ == "__main__": n, b = map(int, input().split()) answer = '' while n: r = n % b ..

๊ธ€ ๋ณด๊ด€ํ•จ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€