五十道编程小题目 --- 41 海滩上有一堆桃子,五只猴子来分 java

【程序41】 

题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一

个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中

,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子? 

程序分析:

桃子总数为total个,

(1)第一个猴子分完5份后,每个猴子拿的桃子个数为:(total-1)/5;

(2)第一个猴子拿走一份后,剩余的桃子为tota_01 = total-(total-1)/5;然后第二个猴子又将剩余的桃子分为5份,即每个猴子拿(total_01-1)/5;

(3) 第三个猴子同理:将剩余的桃子total_02 = total – (total-1)/5 – (total_01-1)/5  分为5份;每个猴子拿(total_02-1)/5;

(4) 第四个猴子同理:将剩余的桃子total_03 = total – (total-1)/5 – (total_01-1)/5 – (total_02-1)/5  分为5份;每个猴子拿(total_03-1)/5

(5) 第五个猴子同理:将剩余的桃子total_04 = total – (total-1)/5 – (total_01-1)/5 – (total_02-1)/5 – (total_03-1)/5   分为5份;每个猴子拿(total_04-1)/5;




public class Test41 {

	public static void main(String[] args) {
		int total = 1;
		for (int j = 0; j < 5; j++) {
			total = 5*total + 1; 
		}
		System.out.println("最少有" + total + "个桃子");
	}

}

输出结果:

最少有3906个桃子




点赞