본문 바로가기
백준 풀이

[백준/BOJ] - 11726번 python 풀이 - DP

by 반오십 코린이 2022. 12. 28.
728x90


Key Point

1. 점화식으로 표현 가능하여 dp로 풀면 되는 문제이다.

2.  n이 3초과 값부터 점화식이 적용되므로 d[1] ~ d[3] 까지의 값은 미리 지정해준다.

 

Problem Solving

 

d[1] = 1
d[2] = 2
d[3] = 3
d[4] = 5 
d[5] = 8
d[6] = 13
.
.
.
d[9] = 55

 

규칙에서 n이 3초과 부터 d[n] = d[n-1] + d[n-2]의 값을 만족한다.


import sys
input = sys.stdin.readline
d = [0]*1001
d[1] = 1
d[2] = 2
d[3] = 3
n = int(input())
if n>3:
    for i in range(4, n+1):
        d[i] = d[i-1] + d[i-2]
print(d[n] % 10007)
728x90