weixin_32709317
酱白
采纳率50%
2015-11-10 09:39 阅读 1.8k

c++递归的应用 吃饼问题

要求是那个啥 用七天吃完十块饼 每天只能吃一块或两块 问有多少种不同方法 我明白了没有七天限制的方法 但加个限制真的想不懂了 求助啊

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

9条回答 默认 最新

  • 已采纳
    I_just_smile baboon_chen 2015-11-10 13:04

    我用C++帮你敲了一下,不知道是不是这样的。
    #include
    using namespace std;

    int cooky=10;// 饼干数
    int num=2;//每天最多吃多少饼干
    int day=7;//天数
    int ans=0;//共有多少种方法

    void way(int c,int d)
    {
    if(c==0 && d==day)
    {
    ans++;
    return;
    }
    else if(c7)
    return;
    for(int i=1;i<=num;i++)
    way(c-i,d+1);
    }

    int main()
    {
    way(cooky,0);
    cout<<day<<"天吃完"<<cooky<<"个饼有"<<ans<<"种方法。"<<endl;
    return 0;
    }

    点赞 评论 复制链接分享
  • u014116643 mifit 2015-11-10 09:48

    这是编程题目还是数学啊?

    点赞 评论 复制链接分享
  • u014116643 mifit 2015-11-10 09:51

    答案就这公式吧:7!/(10-7)!

    点赞 评论 复制链接分享
  • dongfeng9ge 东风玖哥 2015-11-10 09:52

    这不就是吃一块饼的四天和吃两块饼的三天的排列组合问题吗?

    点赞 评论 复制链接分享
  • dongfeng9ge 东风玖哥 2015-11-10 09:52

    这不就是吃一块饼的四天和吃两块饼的三天的排列组合问题吗?

    点赞 评论 复制链接分享
  • Meditator_hkx Meditator_hkx 2015-11-10 10:52

    题主意思是:不止要算出数目还要列出所有的可能吧?

    点赞 评论 复制链接分享
  • I_just_smile baboon_chen 2015-11-10 13:05

    代码中的else if 的条件在回复中没有显示出来,楼主自己补上这个条件吧 c7

    点赞 评论 复制链接分享
  • I_just_smile baboon_chen 2015-11-10 13:06

    C7是 C小于0或者 day大于7 真无语 回复竟然不能打出来。。。

    点赞 评论 复制链接分享
  • m0_52299509 领航21 2021-01-17 07:41

    这个代码无法实现功能啊!

     

     

    点赞 评论 复制链接分享

相关推荐