[๋ฐฑ์ค€-11726] 2xn ํƒ€์ผ๋ง / Python

๐Ÿ“š Problem Solving/Baekjoon

 

11726๋ฒˆ: 2×n ํƒ€์ผ๋ง

2×n ํฌ๊ธฐ์˜ ์ง์‚ฌ๊ฐํ˜•์„ 1×2, 2×1 ํƒ€์ผ๋กœ ์ฑ„์šฐ๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์•„๋ž˜ ๊ทธ๋ฆผ์€ 2×5 ํฌ๊ธฐ์˜ ์ง์‚ฌ๊ฐํ˜•์„ ์ฑ„์šด ํ•œ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์˜ ์˜ˆ์ด๋‹ค.

www.acmicpc.net

n = int(input())
d = [0] * 1001
d[1], d[2] = 1, 2
for i in range(3, n+1):
    d[i] = d[i-1] + d[i-2]
print(d[n]%10007)

 

ํ•ด์„ค

๋Œ€ํ‘œ์ ์ธ dp๋ฌธ์ œ๋กœ ์•Œ๋ ค์ง„ ํƒ€์ผ๋ง ๋ฌธ์ œ. ํ˜„์žฌ ๊ฐ’์€ ์ด์ „ ๊ฐ’๊ณผ ๊ทธ ์ด์ „ ๊ฐ’์˜ ํ•ฉ์ด๋‹ค.