https://school.programmers.co.kr/learn/courses/30/lessons/12914
동적 프로그래밍(Dynamic Programming, DP) 알고리즘 유형에 속함.저장된 결과를 재사용함으로써 계산 시간을 대폭 줄이는 방법.python
def solution(n):
if n == 1:
return 1
elif n == 2:
return 2
else:
dp = [0] * (n + 1)
dp[1] = 1
dp[2] = 2
for i in range(3, n + 1):
dp[i] = dp[i - 1] + dp[i - 2]
return dp[n] % 1234567