蓝桥杯 18省赛 C2 猴子分香蕉(锁定数据范围)
标题:猴子分香蕉
5只猴子是好朋友,在海边的椰子树上睡着了。这期间,有商船把一大堆香蕉忘记在沙滩上离去。
第1只猴子醒来,把香蕉均分成5堆,还剩下1个,就吃掉并把自己的一份藏起来继续睡觉。
第2只猴子醒来,重新把香蕉均分成5堆,还剩下2个,就吃掉并把自己的一份藏起来继续睡觉。
第3只猴子醒来,重新把香蕉均分成5堆,还剩下3个,就吃掉并把自己的一份藏起来继续睡觉。
第4只猴子醒来,重新把香蕉均分成5堆,还剩下4个,就吃掉并把自己的一份藏起来继续睡觉。
第5只猴子醒来,重新把香蕉均分成5堆,哈哈,正好不剩!
请计算一开始最少有多少个香蕉。
=======================
心得:
就是试数,桥一个范围,要验算
public class 细节_2 {
public static void main(String[] args) {
int a =0 ,b =0 ,c =0;
int numb =10000; //这个数就是需要桥的
boolean flag =true;
for(int i =6 ;i <numb ;i ++) {
b =i;
flag =true;
for(int j =1 ;j <6 ;j ++) {
a =b %5; //多的
c =b /5; //分的
b -=(a +c); //吃剩的
if(b ==0) break;
if(j !=5) {
if(a !=j) break;
}else {
if(a !=0) break;
flag =false;
}
}
if(flag) continue;
//只要最少的情况
System.out.println(i);
return ;
}
}
}