TOJ1007

#include<iostream>
using namespace std;

int fun(int N)
{
    int arr[100];
    arr[0] = 1;arr[1] = 1;
    for (int i = 2;i <= 40;i++)
    {
        arr[i] = arr[i - 1] + arr[i - 2];
    }
    return arr[N];
}

int main()
{
    int N;
    while (cin >> N, N != 0)
    {
        cout <<fun(N)<< endl;
    }
    return 0;
}
View Code

仍然是找规律的题目,可以根据结果的规律性得出结论;然后利用数组和关系式表示,将有规律的值存储到数组中去。

最后返回或输出arr[N]即可。

原文地址:https://www.cnblogs.com/hansichen/p/7219018.html