Problem3-1013

来源:互联网 发布:大数据系统架构图 编辑:程序博客网 时间:2024/06/09 22:47

简单题意:

一头母牛每年生一头小母牛,每头小母牛长到第四年的时候也能生一头小母牛,求第n年母牛的数量

解题思路:

利用递归,前四年f(n)=1,但到了第五年,每年都有小母牛生出小母牛,得出递归公式:f(n) = f(n-1) + f(n-3),接下来就好计算了。

代码如下;

#include <iostream>
using namespace std;


int num(int a)
{
    if (a == 1)
        return 1;
    else if (a == 2)
        return 2;
    else if (a == 3)
        return 3;
    else if (a == 4)
        return 4;
    else
        return num(a-1) + num(a-3);
}


int main()
{
    int n;
    while (1)
    {
        cin >> n;
        if (n == 0)
            break;
        else
        {
        int data = num(n);
        cout << data << endl;
        }
    }
    return 0;
}


0 0
原创粉丝点击