标签:
package snippet;
import java.util.Scanner;
/**
* 海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只
* 猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了
* 一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的, 问海滩上原来最少有多少个桃子?
*
*
*
* @author Administrator
*
*/
public class Snippet {
public static int m = 0;// 桃子总数
public static void main(String args[]) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
if (n == 1) {
System.out.println(2);// 特例
} else {
houZhi(0, 1, n);
}
}
public static int houZhi(int all, int k, int n) {// k表示分桃次数
if ((all - 1) % n == 0 && k <= n) {
if (k == n) {
System.out.println(m);
return 0;
}
k += 1;
return houZhi((all - 1) / n * (n - 1), k, n);
} else {
m += 1;
return houZhi(m, 1, n);
}
}
}
标签:
原文地址:http://my.oschina.net/liangshao/blog/508318