【题解】生产机器

生产机器

http://www.nowcoder.com/questionTerminal/995446483e504f3ebe418b94d92eada6

第n个月的兔子可以分成4类,一类是成熟的兔子f(n-3),第二类是刚出生的兔子f(n-3),第三类是出生了一个月的兔子f(n-4),第四类是出生了两个月的兔子f(n-5)

#include<iostream>

using namespace std;
const int MAXN = 1e6+10;
long long mod = 1e9+7;
long long dp[MAXN]={0,1,1,1,2};
int main()
{
    int n;
    cin >> n;

    int t = 0;
    long long sum = 0;
    for(int i = 5 ; i <= n ; i++)
    {
        dp[i]+=dp[i-3];
        dp[i]%=mod;
        for(int j = i-3 ; j >= i-5 &&j>0 ; j--)
        {
            dp[i]+=dp[j];
            dp[i]%=mod;
        }
    }
    cout<<dp[n];
    return 0;
}
全部评论

相关推荐

点赞 评论 收藏
分享
2 收藏 评论
分享
牛客网
牛客企业服务