解题思路:
一只母猪生下第二头后立马被杀掉,可以这样想即,生下第二头便被杀掉,可以看成母猪数量没变
第一天 1
第二天 2
第三天 3 :第一头生第二头后杀掉还是1头,第二头再加上第二头生下的,一共三头
所以只需要前一天的数量 + 前前一天的数量 = 当天的数量。
可以理解,母猪只生下一头后便不生了(i-2),还要加上下一个生的(i-1)。
斐波那契数列:f[i] = f[i - 1] + f[i - 2]
Ac code :
#include<bits/stdc++.h>
using namespace std;
int main()
{
int t,a,i,x[];
x[]=;
x[]=;
for(i=;i<;++i)
x[i]=x[i-]+x[i-];
scanf("%d",&t);
while(t--)
{
scanf("%d",&a);
printf("%d\n",x[a]);
}
return ;
}