๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์•Œ๊ณ ๋ฆฌ์ฆ˜/DP

[Python] ๋ฐฑ์ค€ 11726 2 x n ํƒ€์ผ

by JayAlex07 2023. 3. 22.

๐Ÿง‘‍๐Ÿ’ป [Python] ๋ฐฑ์ค€ 11726 2 x n ํƒ€์ผ

Silver 3 - DP

img

 

n์„ 1๋ถ€ํ„ฐ 5๊นŒ์ง€ ํƒ€์ผ์„ ์ž„์˜๋กœ ์ฑ„์›Œ์ฃผ๋‹ค๋ณด๋ฉด, ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜์—ด์ด๋ž€ ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค

 

cache ๋ฆฌ์ŠคํŠธ์— 0์„ 1001๊ฐœ๋ฅผ ๋„ฃ๋Š”๋‹ค

 

๋จผ์ € cache[1]๊ณผ cache[2]์— 1๊ณผ 2๋ฅผ ๋„ฃ์–ด ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜์—ด์„ ์‹œ์ž‘ํ•œ๋‹ค

 

for๋ฌธ์— ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜์—ด์„ ๊ณ„์‚ฐํ•˜๋Š” ์‹์„ ๋„ฃ๋Š”๋‹ค


 

 

์ฝ”๋“œ

Num = int(input())

cache = [0] * 1001
cache[1], cache[2] = 1, 2

for i in range(3, 1001):
    cache[i] = cache[i - 1] + cache[i - 2]


print(cache[Num] % 10007)