//7、海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中, //拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个, //它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子 -------------------------------------------------------------------------------------------------------------------------------------------- package com.itheima;
public class Test7 {
public static void main(String[] args) {
// 定义一个变量
int num;
A: for (int i = 0; true; i++) {
// 用变量num记录i的值,i为最后一个猴子拿剩下的桃子数
num = i;
// 因为五个猴子操作桃子堆,所以循环5次
for (int j = 5; j >= 1; j--) {
// 判断i能否整除4,能整除可能是猴子拿走之后剩下的桃子数
if (i % 4 == 0) {
// 计算出第j只猴子来到桃子堆未处理时候的桃子数
i = i / 4 * 5 + 1;
} else {
// i循环之后不能整除4,说明是不满足要求的,将其没有进行循环的值赋值给i,再进行下次循环
i = num;
continue A;
}
}
// 打印满足条件的值,并结束循环,第一次打印的数字即为最小的
System.out.println(i);
break;
}
}
}
|