https://www.acmicpc.net/problem/1003
백준 1003 '피보나치 함수' 문제입니다.
피보나치 함수를 동적 프로그래밍으로 구현하고
n-1, n 번째의 피보나치 수를 출력하면 됩니다.
import sys
input = sys.stdin.readline
T = int(input())
dp = [0] * 41
def fibo(x):
if x == 0:
return 0
if x == 1 or x == 2:
return 1
if dp[x] != 0:
return dp[x]
dp[x] = fibo(x-1) + fibo(x-2)
return dp[x]
for _ in range(T):
example = int(input())
if example == 0:
print(1,0)
elif example == 1:
print(0, 1)
else:
print(fibo(example-1), fibo(example))
'백준 알고리즘' 카테고리의 다른 글
파이썬) 백준 알고리즘 | 1874번 : 스택 수열 (0) | 2022.02.27 |
---|---|
파이썬) 백준 알고리즘 | 2075번 : N번째 큰 수 (0) | 2022.02.24 |
파이썬) 백준 알고리즘 | 1021번 : 회전하는 큐 (0) | 2022.02.06 |
파이썬) 백준 알고리즘 | 11866번 : 요세푸스 문제 0 (0) | 2022.02.06 |
파이썬) 백준 알고리즘 | 9012번 : 괄호 (0) | 2022.02.06 |
댓글