算法描述

猴子吃桃

有n个桃子,猴子第一天吃了一半,觉得不过瘾,又多吃了一个,第二天把剩下的桃子吃了一半,又多吃了一个,到第十天的时候,恰好剩下了1个桃子,求n

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

算法思路

  1. 这里采用递推的思路,从后面往前推即可

n-n/2-1=1

化简可得 n= (i + 1 )*2 i开始为1

题目是十天,递推十次即可获得n的结果

算法实现

    int n=1;
    for(int i=10;i>=1;i--){
        n = eat(n);
        System.out.print("第"+i+"天吃了");
        System.out.println(n);
    }
}
public static int eat(int n){
    int result = (n+1)*2;
    return result;
}

结果

 算法学习——递推之猴子吃桃 算法

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄