반응형
[ Contents ]
1. 문제 (링크 참조)
10870번: 피보나치 수 5
피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가
www.acmicpc.net
2. 문제 풀이
N번째 피보나치 수를 출력하는 문제입니다.
2022.01.19 - [Algorithm] - [Algorithm] 단골 1번 문제, 구현 / 수학
[Algorithm] 단골 1번 문제, 구현 / 수학
[ Contents ] 1. 구현 단순히 '구현'만 하면 되는 문제 유형입니다. 문제를 이해하고 입력에 맞춰 적절한 출력만 하면 됩니다. 특별한 알고리즘이나 프로그래밍적 기법 없이, 단순 제어문만 사용하
star7sss.tistory.com
다른 피보나치 수 문제와 달리, 다이나믹 프로그래밍(DP)을 쓰지 않아도 풀 수 있는 문제입니다. 단순 구현이나, 재귀적 방법으로도 통과 가능합니다.
3. 코드
N = int(input())
def fibonacci(n):
if n == 0:
return 0
if n == 1:
return 1
return fibonacci(n-1) + fibonacci(n-2)
print(fibonacci(N))
재귀적 방식으로 구현했습니다. n이 커질수록 재귀함수 호출횟수가 크게 늘어나므로, 좋은 구현방식은 아닙니다.
반응형
'Algorithm' 카테고리의 다른 글
[구현/수학] 백준 11441 합 구하기 - Python (0) | 2022.02.14 |
---|---|
[구현/수학] 백준 11659 구간 합 구하기 4 - Python (0) | 2022.02.14 |
[DP/동적계획법] 백준 10826 피보나치 수 4 - Python (0) | 2022.02.14 |
[DP/동적계획법] 백준 2749 피보나치 수 3 - Python (0) | 2022.02.13 |
[DP/동적계획법] 백준 2748 피보나치 수 2 - Python (0) | 2022.02.13 |
댓글