1.题目描述
链接https://www.nowcoder.com/questionTerminal/1221ec77125d4370833fd3ad5ba72395
有一只兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子,假如兔子都不死,问每个月的兔子总数为多少?
2.思路解析
- 这个是算出一个月份大的,两个月份大的,三个月份大的兔子个数,最后相加
3.代码实现
#include<iostream>
using namespace std;
int main()
{
// 月份
int month = 0;
while(cin >> month)
{
// 分别是三个月份大的兔子数量
int m1 = 1, m2 = 0, m3 = 0;
while(--month)
{
// 三个月大的兔子等于原来的加上两个月大的
m3 = m3 + m2;
// 两个月大的由一个月份大的提供
m2 = m1;
// 每月会生产新兔子
m1 = m3;
}
// 三个加起来
cout << m1 + m2 + m3 << endl;
}
return 0;
}