牛牛

    有一个农场在第一年的时候买了一头刚出生的牛,这头牛在第四年的时候就能生一头小牛,以后每年这头年就会生一头小牛。这些小牛成长到第四年也会生小牛,以后每年同样会生一头牛,假如牛不死,如此反复。请问20年后,这个农场会有多少头牛?

数列为: 1  1 1  2  3 4  6  9 13  19   28 41  60……

终止条件是:f(1)=f(2)=f(3)=1

递归式:f(n)=f(n-1)+f(n-3)

#include
int f(int n)
{
 int s;
 if(n==1||n==2||n==3)
  return 1;
 else
  s=f(n-1)+f(n-3);
 return s;
}
int main()
{
 printf("%d\n",f(20));
 return 0;
}

你可能感兴趣的:(daima,zuoye)