반응형
import sys
# 다이나믹 프로그래밍: 시간 초과를 막기 위한 메모제이션
fires=[0,1,1]
def fire(n):
if n ==0:
return 0
elif n==1:
return 1
elif len(fires)>n: # 이미 값을 계산한 적이 있다면 그 값을 바로 리턴
return fires[n]
else:
save= fire(n-1)+fire(n-2)
fires.append(save)
return save
N = int(input())
print(fire(N))
반응형
'알고리즘' 카테고리의 다른 글
이진탐색 모르겠다 (0) | 2020.10.05 |
---|---|
백준 1003번 피보나치 함수 파이썬+ 메모제이션 (0) | 2020.10.04 |
백준 1939번 중량제한 파이썬 (0) | 2020.10.04 |
코딜리티 PermMissingElem (0) | 2020.10.03 |
코딜리티 스텝 2 : dict filter (0) | 2020.10.03 |