https://www.acmicpc.net/problem/4150
풀이 1
피보나치 수를 점화식을 사용해서 문제를 풀어준다.
# 4150번 피보나치 수
n = int(input())
# dp 생성
fibo = [0, 1]
for i in range(2, n+1):
fibo.append(fibo[i-1] + fibo[i-2])
print(fibo[n])
출력결과
풀이 2(시간초과)
재귀함수 사용하게되며 시간초과 일어난다.
# 4150번 재귀함수 사용
import sys
sys.setrecursionlimit(10 ** 6)
def fibo(n):
if n == 0: return 0
elif n == 1: return 1
else: return fibo(n-1) + fibo(n-2)
n = int(input())
print(fibo(n))
'백준 > 구현' 카테고리의 다른 글
[백준] 2475번 검증수 - 파이썬 (0) | 2022.02.20 |
---|---|
[백준] 2920번 음계 - 파이썬 (0) | 2022.02.20 |
[백준] 2563번 색종이 - 파이썬 (0) | 2022.02.16 |
[백준][Python] 1037번 약수 - 코팩 (0) | 2022.02.14 |
[백준] 2980번 도로와 신호등 - 파이썬 (0) | 2022.02.14 |