HDU-2018(母牛的故事)(递归)(递推)

题目:

HDU-2018(母牛的故事)(递归)(递推)
原题链接:HDU-2018

题目大意:

意思比较明显。。。。。。。。。

递归代码:

#include <cstdio>
int num;
void cattle(int n)
{
    for(int i=1; i<=n; i++)
    {
        if(i>1)
        num++;
        cattle(n-i-2);
    }
}
int main()
{
    int n;
    while(scanf("%d",&n))
    {
        if(n==0)
            break;
        num=1;
        cattle(n);
        printf("%d\n",num);
    }
    return 0;
}

递推代码:

#include <cstdio>
int a[60];
int main()
{
    int n;
    a[1] = 1;
    a[2] = 2;
    a[3] = 3;
    a[4] = 4;
    for(int i=5; i <= 55; i++)
        a[i] = a[i-1] + a[i-3];
    while(~scanf("%d",&n))
    {
        if(n==0)
            break;
        printf("%d\n",a[n]);
    }
    return 0;
}