본문 바로가기

온라인 코딩/다이나믹 플밍(Dynamic)

[백준] 2748번 피보나치 수 2

 

 

 

 

 

문제

 

소스코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<iostream>
constexpr int MAX = 91;
int main() {
    int n=0;
    long long Fibonacci[MAX];
    std::cin >> n;
    Fibonacci[0= 0;
    Fibonacci[1= 1;
 
    for (int i = 2; i <= n; ++i) {
        Fibonacci[i]=Fibonacci[i-2]+Fibonacci[i-1];
    }
    std::cout << Fibonacci[n] << "\n";
}
 

 

후기

전에 풀었던 피보나치 수의 확장판이다. 동적 플밍을 하지 않으면 시간 초과에 걸릴 것이다.

자세한 설명은 아래 링크에 있다. 전 문제와 차이라면 자료형의 주의와 항상 하는 실수인 배열 최댓값 설정 문제이다.

 

 

 

 

 

출처 및 레퍼런스

문제 링크:https://www.acmicpc.net/problem/2748

 

관련글

[백준] 2747번 피보나치 수

동적 계획법과 분활 정복