C++ 백준 2748번
by 너나나
백준 2748번 www.acmicpc.net/problem/2748
문제는 그냥 어제 글 쓴 memoization 이용해서 구현하는 피보나치 수열이다.
처음에 틀렸는데 90번째 피보나치 수가 엄청 커서 함수 선언을 long long으로 해줘야 한다!! 선언을 int로 해서 틀렸다!!
#include<iostream>
using namespace std;
long long memo[90] = { 0, }; // 배열 0으로 다 초기화
long long fibo(int n) {
if (n == 0) return 0;
else if (n == 1) return 1;
if (memo[n] > 0) return memo[n]; // memo[n]>0 이면 앞에 미리 계산한거임! 그거 사용
else {
memo[n] = fibo(n - 1) + fibo(n - 2); // memoization을 이용하여 시간 줄임
return memo[n];
}
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
int t;
cin >> t;
cout << fibo(t) << '\n';
}
하루에 쉬운 거라도 5문제씩 풀기 도전 중인데 너무 하기 싫다!!
이거 하기 싫으니까 한국사가 재밌어지기 시작했다.. 고등학생 땐 쳐다도 안 봤는데!! 으앙아아악
'study > 알고리즘' 카테고리의 다른 글
C++ 백준 11726번 (0) | 2020.12.30 |
---|---|
C++ 백준 1463번 (0) | 2020.12.30 |
C++ 알고리즘 - 다이나믹 프로그래밍 (0) | 2020.12.28 |
C++ 백준 1110번/1929번 (0) | 2020.12.28 |
C++ 알고리즘 소수구하기 - 에라토스테네스의 체 (0) | 2020.12.28 |
블로그의 정보
공부 기록
너나나