海滩上最少有多少个桃子

来源:互联网 发布:淘宝平台抽成 编辑:程序博客网 时间:2024/04/25 11:39


题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?

    思路:
    设最后一个猴子拿了t0个桃子,
    倒数第二个猴子拿了t1=(5*t0+1)/4个桃子,
    倒数第三个猴子拿了t2=(5*t1+1)/4个桃子,

    倒数第四个猴子拿了t3=(5*t2+1)/4个桃子,
    第一个猴子拿了t4=(5*t3+1)/4个桃子,
    则桃子总数 n=5*t4+1

    注意:必须保证t0,t1,t2,t3,t4,n均为正整数,这也是解题的核心条件所在。

    首先声明:我的代码比较笨拙,存在无数的改进地方,不喜勿喷

    代码如下:

<span style="color:#330000;">public class Peach {public int leastNumber() {int total=6;int t0,t1,t2,t3,t4;for(;;total++){if((total-1)%5==0 && (total-1)/5>=1){t4=(total-1)/5;if((t4*4-1)%5==0 && (t4*4-1)/5>=1){t3=(t4*4-1)/5;if((t3*4-1)%5==0 && (t3*4-1)/5>=1){t2=(t3*4-1)/5;if((t2*4-1)%5==0 && (t2*4-1)/5>=1){t1=(t2*4-1)/5;if((t1*4-1)%5==0 && (t1*4-1)/5>=1){t0=(t1*4-1)/5;if(t0>=1){return total;}else{continue;}}else{continue;}}else{continue;}}else{continue;}}else{continue;}}else{continue;}}}public static void main(String[] args) {Peach peach=new Peach();System.out.print(peach.leastNumber());}}</span>
输出结果是:3121

0 0
原创粉丝点击