#include <iostream>#define MAX 40using namespace std;int memo_fib(int n);int main(){int n, testcase;cin >> testcase;for (int i = 0; i < testcase; i++){cin >> n;if (n == 0)cout << "1 0\n";elsecout << memo_fib(n-2) << " " << memo_fib(n - 1) << endl;}return 0;}int memo_fib(int n){static int M[MAX] = { 1, 1 };if (n <= 1)return M[n];if (M[n] == 0)M[n] = memo_fib(n - 1) + memo_fib(n - 2);return M[n];}
'백준' 카테고리의 다른 글
[11051] 이항 계수 2 (0) | 2018.07.23 |
---|---|
[11050] 이항 계수 1 (0) | 2018.07.23 |
[2749] 피보나치 수 3 (0) | 2018.07.23 |
[2748] 피보나치 수 2 (0) | 2018.07.23 |
[2747] 피보나치 수 (0) | 2018.07.23 |