반응형
https://www.acmicpc.net/problem/10870
10870번: 피보나치 수 5
피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n>=2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는
www.acmicpc.net
def fibonacci(num):
if num<=1:
return num
return fibonacci(num-1)+fibonacci(num-2)
n=int(input())
print(fibonacci(n))
이 문제는 재귀로 푸는 문제였다. 피보나치 수에 예를 들어 4번째 피보나치 수를 보면 2번째 수 + 3번째 수이고, 이걸 풀어보면 2번째 수는 0번째 수 + 1번째 수, 3번째 수는 1번째 수 + 2번째 수가 된다. 이것을 함수로 구현한 것이 fibonacci함수이다.
반응형
'알고리즘 > 백준' 카테고리의 다른 글
[python 파이썬] 백준 2798번: 블랙잭 (0) | 2020.01.20 |
---|---|
[python 파이썬] 백준 10872번: 팩토리얼 (1) | 2020.01.15 |
[python 파이썬] 백준 4153번: 직각삼각형 (0) | 2020.01.13 |
[python 파이썬] 백준 3009번: 네 번째 점 (0) | 2020.01.10 |
[python 파이썬] 백준 1085번: 직사각형에서 탈출 (0) | 2020.01.09 |