Java猴子吃桃问题
发布日期:2021-06-30 20:42:55 浏览次数:2 分类:技术文章

本文共 579 字,大约阅读时间需要 1 分钟。

问题:

有一堆桃子,猴子每一天吃了其中的一半,并再多吃一个,以后每天猴子都吃其中的一半,然后再多吃一个,当到第10天时,想再吃(即还没吃),发现只有一个桃子,问题:最初共有多少个桃子

思路分析(逆推):

1. day = 10,有1个桃子,

2.day = 9,有(day10+1)*2 = 4

3.day = 8,有day(9+1)*2 = 10

4.总结规律:前一天的桃子= (后一天的桃子+1)*2

5.递归

代码:

public class Test {  public static void main(String[] args) {    T t1 = new T();    int res = t1.peach(1);    System.out.println(res);    // 1534  }  }class T{  public int peach(int day) {    if (day == 10) {      return 1;    } else if(day >= 1 && day <= 9) {      return (peach(day+1)+1)*2;    } else {      System.out.println("day error");      return -1;    }  }}

 

转载地址:https://liushilong.blog.csdn.net/article/details/116187054 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:uview时间区间选择
下一篇:Java斐波那契数列

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年05月04日 05时42分32秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章