每日一题3.23.1
每日一题3.23.1
统计每个月兔子的总数
解题思路: 设定3个值a,b,c,分别表示大小为一个月,两个月,三个月及以上的兔子数,a的初始值为1,b,c都为0,之后每个月,c+=b,b=a,a=c,依次循环,直到输入的n–为0时终止,倒序输入的月数,得到最终结果,(记得循环输入n 时每次要将a,b,c重新置为初始值)
代码实现:
#include<iostream>
using namespace std;
int main()
{
int n;
int count = 0;
while (cin >> n)
{
int a = 1, b = 0, c = 0;
while (--n != 0)
{
c += b;
b = a;
a = c;
}
count = a + b + c;
cout << count << endl;
count = 0;
}
return 0;
}
参考答案: