有一只猴子,第一天摘了若干个桃子 ,当即吃了一半,但还觉得不过瘾 ,就又多吃了一个。
第 2 天早上又将剩下的桃子吃掉一半,还是觉得不过瘾,就又多吃了两个。以后每天早上
都吃了前一天剩下的一半加天数个(例如,第 5 天吃了前一天剩下的一般加 5 个)。到第 n
天早上再想吃的时候,就只剩下一个桃子了。
输入:
天数 n
输出:
第一天的桃子个数
请问下思路,总是绕不过来弯,用递归如何实现呢
贪吃的猴子c语言,,,,,,,,,,,,
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
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等于一那么只有一个桃子用手机写代码蛋疼
这里就不贴代码了
楼主自己完善
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 优质github账号直接兑换rmb,感兴趣伙伴可以私信
- ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
- ¥15 安装svn网络有问题怎么办
- ¥15 Python爬取指定微博话题下的内容,保存为txt
- ¥15 vue2登录调用后端接口如何实现
- ¥65 永磁型步进电机PID算法
- ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
- ¥88 找成都本地经验丰富懂小程序开发的技术大咖
- ¥15 如何处理复杂数据表格的除法运算
- ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)