본문 바로가기
카테고리 없음

백준 1003 피보나치 함수 DP

by park_hama 2025. 2. 17.

점화식 만드는게 중요하다.

f[n] = f[n-1] + f[n-2]

#include <iostream>
#include <vector>
#include <stack>
#include <string>

using namespace std;

vector<pair<int, int>>v;
//first = 0 sencond = 1

int main() {
    
    v.resize(41);
    int n;
    int temp = 0;
    cin >> n;
    v[0].first = 1;
    v[0].second = 0;
    v[1].first = 0;
    v[1].second = 1;

    for (int i = 2; i < 41; i++) {
        v[i].first = v[i - 1].first + v[i - 2].first;
        v[i].second = v[i - 1].second + v[i - 2].second;

    }
    

    for (int i = 0; i < n; i++) {
        cin >> temp;
        cout << v[temp].first << ' ' << v[temp].second << '\n';

    }

    return 0;
}