JAVA 猴子分桃子问题

java分桃子问题

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

代码实现

public static void main(String[] args) {
		//穷举法
		for (int i = 0; i < Integer.MAX_VALUE; i++) { // 不知道循环次数 定义为int 类型的最大值
			if (((i - 1) % 5 )== 0) {  // 第一次分桃子
				int i1 = ((i - 1) / 5 ) * 4; // 第一次分完桃子后剩下的桃子
				
				if (((i1 - 1) % 5 )== 0) {  // 第二次分桃子
					int i2 = ((i1 - 1) / 5 ) * 4; // 第二次分完桃子后剩下的桃子
					
					if (((i2 - 1) % 5 )== 0) {  // 第三次分桃子
						int i3 = ((i2 - 1) / 5 ) * 4; // 第三次分完桃子后剩下的桃子
						
						if (((i3 - 1) % 5 )== 0) {  // 第四次分桃子
							int i4 = ((i3 - 1) / 5 ) * 4; // 第四次分完桃子后剩下的桃子
							
							if (((i4 - 1) % 5 )== 0) {  // 第五次分桃子
								int i5 = ((i4 - 1) / 5 ) * 4; // 第五分完桃子后剩下的桃子							
							
								System.out.println("最少有"+ i+"个桃子");
								System.out.println("第一次分完桃子后还剩下" + i1 + "个桃子");
								System.out.println("第二次分完桃子后还剩下" + i2 + "个桃子");
								System.out.println("第三次分完桃子后还剩下" + i3 + "个桃子");
								System.out.println("第四次分完桃子后还剩下" + i4 + "个桃子");
								System.out.println("第五次分完桃子后还剩下" + i5 + "个桃子");
								break;  // 找到第一个满足的数据就推出循环
							} 
						} 
					} 
				} 
			} 
		}
		
	}

总结

用的穷举法,个人能力有限。望海涵
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页