【牛客】[编程题]统计每个月兔子的总数C++

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;
}

猜你喜欢

转载自blog.csdn.net/weixin_43967449/article/details/106880245