A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 789sang123 初级黑马   /  2016-12-15 13:20  /  706 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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

1 个回复

倒序浏览
package 杂习;


public class Test1 {
       
        /*
         *  if(x%5==1)--> x/5=y  (x-1)-y=x  
         *   if(x%5==1)--> x/5=y  (x-1)-y=x
         *    if(x%5==1)--> x/5=y  (x-1)-y=x
         *     if(x%5==1)--> x/5=y  (x-1)-y=x
         *      if(x%5==1)--> x/5=y  (x-1)-y=x
         *
         * */
        public static void main(String[] args) {

                int x=0;  // 不断加一操作
                int temp = 0; // 保存最终结果
                int sum=0;        // 累计 满足(y%5==1)的次数
               
               
                while(sum<5){
                       
                        temp = x;  //保存x最后一次数据
                        int y=x;  // 临时保存x数据
                       
                        while(y%5==1){                       
                                y=print(y); // 循环调用
                                sum++;
                                if(sum>4){  // 当sum 累计满5次 调出循环
                                        break;
                                }
                        }
                       
                        if(sum<5) sum=0; // 当sum 累计不足5次 清零
                        x++;
                }
               
                System.out.println(temp);                  
        }
       
// 循环计算部分       
        public static int print(int x){
                        int y=0;
                        y=x/5;
                        x=(x-1)-y;
                return x;
        }
       

}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马