문제 접근
피보나치 수열은 for문으로도 구현 가능하지만 재귀함수로도 구현 가능하다.
Fn = Fn-1 + Fn-2 (n ≥ 2)를 활용하면 될 것 같다.
정답 코드
import sys
def fibonacci(n):
if n == 0:
return 0
elif n == 1 or n == 2:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
n = int(sys.stdin.readline())
print(fibonacci(n))
'알고리즘 > 백준' 카테고리의 다른 글
[백준 알고리즘] 2231번: 분해합 (파이썬 / Python) (1) | 2022.08.03 |
---|---|
[백준 알고리즘] 10814번: 나이순 정렬 (파이썬 / Python) (0) | 2022.08.02 |
[백준 알고리즘] 17478번: 재귀함수가 뭔가요? (파이썬 / Python) (0) | 2022.08.02 |
[백준 알고리즘] 2805번: 나무 자르기 (파이썬 / Python) (0) | 2022.08.02 |
[백준 알고리즘] 2839번 : 설탕 배달 (파이썬 / Python) (0) | 2022.08.01 |