#include<stdio.h>
void main() {
int i;
int j = 1;//倍数
int x;//第5个猴子扔掉一个并取走一份后,剩余4份的总数量
while (1 == 1) {//干就完了
x = 4 * j++;//海滩上剩余桃子总数,必须是4的倍数(用4的倍数进行穷举)
for (i = 1; i <= 5; i++) {
x = x * 5 / 4 + 1;//第一次循环为第5个猴子动手前海滩上的桃子总数,以后依次为第4猴,第三猴...
if (x % 4 == 0) {//海滩上剩余桃子总数依然必须是4的倍数(能够分成4份)
continue;
} else {
break;
}
}
if (i == 5) {//5个猴子都完成了各自操作
break;
}
}
printf("海滩上原来最少有%d个桃子\n", x);
}
运行结果:
本章C语言经典例题合集:http://t.csdnimg.cn/FK0Qg