解题思路:可以先定义fun(n),前3年每年年初生一头小母牛,即n<=3时,第n年就返回n的值;

                                            从第4年开始,即n>=4时,母牛的数=前1年总的数+第n年的数(注:从第4年开始,即为第1年)

                                            故从第4年开始,母牛的数=fun(n-1)+fun(n-3)。

注意事项:

参考代码:

#include<stdio.h>

int fun(int n)

{

    if(n<=3) return n;

    else return fun(n-1)+fun(n-3);

}

int main()

{

    int n;

    while(scanf("%d",&n)!=EOF)

    {

        if(n==0) break;

        else printf("%d\n",fun(n));

    }

}


 

0.0分

3 人评分

  评论区