题解 | #吃糖果#

吃糖果

https://www.nowcoder.com/practice/72015680c32b449899e81f1470836097

#include<bits/stdc++.h>
using namespace std;

//计算吃巧克力的方案数目
int chocolateCount(int N) {
    //如果只有一块巧克力,则只有1种方案
    if (N == 1) {
        return 1;
    }
    //如果只有两块巧克力,则有两种方案
    else if (N == 2) {
        return 2;
    }
    //若巧克力块数大于2,则使用动态规划计算方案数
    else {
        //创建一个数组存储计算结果
        int dp[N + 1];
        //初始化已知的方案数目
        dp[1] = 1;
        dp[2] = 2;
        //计算剩余巧克力块数的方案数目
        for (int i = 3; i <= N; i++) {
            dp[i] = dp[i - 1] + dp[i - 2];
        }
        //返回最终的方案数目
        return dp[N];
    }
}
int main() {
    int n;
    cin >> n;
    cout << chocolateCount(n);
}

全部评论

相关推荐

仁者伍敌:牛子这些人还会点一个自动回复,boss都不带回复的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务