백준 10870 : 피보나치 수 5
문제 링크:
https://www.acmicpc.net/problem/10870
10870번: 피보나치 수 5
피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n>=2)가 ��
www.acmicpc.net
문제 내용
(요약) 0번째 피보나치 수는 0이고 1번째 피보나치 수는 1일 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오.
Idea
이번 문제는 재귀 함수로 풀어보았다.
피보나치 수는 자신 앞의 두 수를 합한 값과 같다는 것을 이용하여 먼저 점화식을 작성한다.
이를 그대로 코드에 옮겨적으면 된다.
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#include <stdio.h>
int fibo(int n) {
if (n >= 2)
return fibo(n - 1) + fibo(n - 2);
else if (n == 1) return 1;
else return 0;
}
int main() {
int n;
scanf("%d", &n);
printf("%d\n", fibo(n));
return 0;
}
|
cs |
'백준 Baekjoon' 카테고리의 다른 글
[C언어] 백준 2231 : 분해합 (0) | 2020.08.16 |
---|---|
[C언어] 백준 1568 : 새 (0) | 2020.08.14 |
[C언어] 백준 10872 : 팩토리얼 (0) | 2020.08.14 |
[C++] 백준 1920 : 수 찾기 (0) | 2020.08.06 |
[JAVA] 백준 1822 : 차집합 (0) | 2020.08.02 |