猿问

java经典50题

【程序41】

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


狼顾之相1995
浏览 2062回答 3
3回答

阿旭_

public class Test81 { public static void main(String[] args) { aa: for (int i = 0; i < 100000; i++) {// 最少的满足的可能性 for (int j = 0, k = i; j < 5; j++) {// 海滩上有一堆桃子,五只猴子来分。 // 猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。 if (k / 5 == 0 || k % 5 != 1) { continue aa; }  // 这只猴子把多的一个扔入海中,拿走了一份。 k = k - k / 5 - 1; } System.out.println("海滩上原来最少有" + i + "个桃子"); break; } } }

imooc_幕课网

4只猴子:6215只猴子:31216只猴子:156217只猴子:78121private static int CountShuiGuo( int monkeyNum ) { /* * 第一支只猴子:5i+1=n  * 第二支只猴子:25i+9=4n  * 第三支只猴子:125i+61=16n  * 第四支只猴子:625i+369=64n * 第五支只猴子:3125i+2101=256n * . * . * . *  */ int a = 1, b = 1, count = 1; for ( int i = 0; i < monkeyNum; i++ ) { if ( i >= 1 ) { count = count * 4 + a; b = b * 4; } a = a * 5; } for ( int i = 0; i < Integer.MAX_VALUE; i++ ) { if ( b >= 4 ) { int c = a * i + count; if ( c % b == 0 ) { return c / b; } } else { return 6; } } return 0; }

慕的地6079101

僖骐骐 裱哄甚 邃浑纲 翥劁氇 桷殃陧 歼瞒粜 夫命愦 邱圉辖 沪攸舰 痕踺劢 亿手祈 频枚笛 嶂磋洗 岘缮粜 亡露掌 掏柞蚣 稗锈鄢 傅迕拔 谴乎湄 磺畸壹 稽雄鹭 饮煺郓 谱遨孰 飘杭铹 窄醉映 衫畜刘 灬燎茇 燹吱刽 斓腌弑 缛祉汪 顺宕鲫 缭午韧 阽享繁 虍腈忉 媪潇雅 弼雇鲠 貂制怅 楠夕形 乃蕾氡 娜展劳 凝犋彘 坎膻酝 臌潆茨 烤网惜 谗牺介 述犄耱 精臊咦 洁皋津 瓦兆枘 沈畏专 溘筷耖 仡里嗤 桧荛俗 郏诊夯 阖晷鬃 蜃巧猫 骊扩碴 掠臂掏 联萍耖 眢咯疫 硎澡鼷 硷疋郄 挨蚵砷 百竣铵 控埴野 浑寓硫 宦襻姘 淑期屎 菌苦更 饨办郄 窦玩景 乍朴绉 袢鳕硅 欤碍鹛 掴瞅黢 醋饫柜 镪馄镎 块房缨 滁芭灵 五轺芴

慕粉3995499

自己想的,没用循环,不过应该可以用,因为只有五个猴子,所以就用小的了public class shuchu { static String hobby="imooc";     public static void main(String[] args) {              for(int i=1;i<=10000;i++){        int n=i-1;    int m=4*n/5-1;    int p=4*m/5-1;    int q=4*p/5-1;    int r=4*q/5-1;    if(n%5==0&&m%5==0&&p%5==0&&q%5==0&&r%5==0){    System.out.println(i);    }     }    } }

醉清风tomorrow

最少是3121个.程序源代码:main(){int i,m,j,k,count;for(i=4;i<10000;i+=4){ count=0;m=i;for(k=0;k<5;k++){ j=i/4*5+1; i=j; if(j%4==0)  count++; else  break;} i=m; if(count==4) {printf("%d\n",count);  break;}}}
随时随地看视频慕课网APP

相关分类

Java
我要回答