문제는 이 곳 링크를 참조하길 바란다.
def solution(n):
dp = [1]+[0]*n
dp[1] = 1
for i in range(2, n+1):
dp[i] = (dp[i-1] + dp[i-2]) % 1000000007
return dp[n]
n=1,2,3,4일때의 result의 값을 따져본다면
n=1 -> result = 1
n=2 -> result = 2
n=3 -> result = 3
n=4 -> result = 5
이런 경우를 볼 수 있다.
한 마디로 피보나치수열 인것이므로 기본적인 피보나치수열 코드를 동적배열법으로 구현하면 된다.