计算兔子数量
1.题目介绍
有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,求第n个月的兔子总对数为多少?
2.题解
2.1 动态规划
思路
类似于爬楼梯的思路。
代码
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
* 计算第n个月的兔子总共多少对。
* @param count int整型 第多少个月后兔子总对数
* @return long长整型
*/
long long calculateTotal(int count) {
if (count < 3) return 1;
long long i = 1, j = 1, ans = i + j;
for (int k = 1; k <= count - 3; k++){
i = j;
j = ans;
ans = i + j;
}
return ans;
}
};
2.2 递归
思路
原理采自于斐波拉契数列
代码
class Solution {
public:
long long calculateTotal(int count) {
if (count < 3) return 1;
return calculateTotal(count - 1) + calculateTotal(count - 2);
}
};
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了