[백준/BOJ] 백준 2748번 : 피보나치 수 2
2020. 9. 25. 21:32ㆍ알고리즘 문제풀이
fibo[91]를 사용해 중복된 계산을 하지 않도록 했다.
코드
#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;
long long fibo[91];
long long Solve(int n)
{
long long& ret = fibo[n];
//계산한 적이 있을때
if (ret != -1)
return ret;
ret = Solve(n - 1) + Solve(n - 2);
return ret;
}
int main()
{
cin.tie(NULL);
ios_base::sync_with_stdio(false);
int n;
memset(fibo, -1, sizeof(fibo));
//0번째 피보나치 수와 1번째 피보나치 수는 저장해 놓는다
fibo[0] = 0;
fibo[1] = 1;
cin >> n;
cout << Solve(n);
return 0;
}
'알고리즘 문제풀이' 카테고리의 다른 글
[백준/BOJ] 백준 9658번 : 돌 게임 4 (0) | 2020.09.26 |
---|---|
[백준/BOJ] 백준 9655번 : 돌 게임 (0) | 2020.09.26 |
[백준/BOJ] 백준 16988번 : Baaaaaaaaaduk2 (Easy) (0) | 2020.09.25 |
[백준/BOJ] 백준 4963번 : 섬의 개수 (0) | 2020.09.24 |
[백준/BOJ] 백준 15681번 : 트리와 쿼리 (0) | 2020.09.24 |