_乔 2016-09-06 13:28 采纳率: 100%
浏览 2174
已采纳

贪吃的猴子c语言,,,,,,,,,,,,

有一只猴子,第一天摘了若干个桃子 ,当即吃了一半,但还觉得不过瘾 ,就又多吃了一个。
第 2 天早上又将剩下的桃子吃掉一半,还是觉得不过瘾,就又多吃了两个。以后每天早上
都吃了前一天剩下的一半加天数个(例如,第 5 天吃了前一天剩下的一般加 5 个)。到第 n
天早上再想吃的时候,就只剩下一个桃子了。
输入:
天数 n
输出:
第一天的桃子个数
请问下思路,总是绕不过来弯,用递归如何实现呢

  • 写回答

8条回答 默认 最新

  • 青春逝如流水 2016-09-06 15:57
    关注

    你可以倒着来,这样想。
    get(1)=1就是第一天有一个桃
    get(2)=2(1+(n-1))
    get(3)=2(get(2)+(n-2))
    这样以此类推
    get(n)=2(get(n-1)+(n-(n-1)))
    然后化简
    得到一个递归公式
    也就是如果是n天那么桃子就有
    2(get(n-1)+1)个
    如果n等于一那么只有一个桃子

    用手机写代码蛋疼

    这里就不贴代码了

    楼主自己完善

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(7条)

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料