PAT 童年生活二三事 (遞推) 詳細題解
阿新 • • 發佈:2018-11-19
按理說這就是一道水題, 可我一開始竟然沒想出來要用遞推, 反而糾結在組合數學和搜尋上面了
水題就要多多找找規律, 把前幾個答案都列出來, 馬上就可以發現就是斐波那契數列了
//童年生活二三事 #include <cstdio> #include <iostream> #include <algorithm> #include <cstring> #include <string> #include <vector> #include <queue> #include <cmath> using namespace std; #define ms(x, n) memset(x,n,sizeof(x)); typedef long long LL; const LL maxn = 95; LL n, cont[maxn]; void init() { cont[1] = 1, cont[2] = 2; for(int i = 3; i <= maxn; i++) cont[i] = cont[i-1]+cont[i-2]; } int main() { init(); while(cin >> n){ cout << cont[n] << endl; } return 0; }