用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - java代码库

java 猴子分桃子问题

2012-11-26 作者: 程序猿style举报

[java]代码库

/**
 * 海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,
 * 又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?
 */
public class Dg {
	static int ts = 0;// 桃子总数
	int fs = 1;// 记录分的次数
	static int hs = 5;// 猴子数...
	int tsscope = 5000;// 桃子数的取值范围.太大容易溢出.

	public int fT(int t) {
		if (t == tsscope) {
			// 当桃子数到了最大的取值范围时取消递归
			System.out.println("结束");
			return 0;
		} else {
			if ((t - 1) % hs == 0 && fs <= hs) {
				if (fs == hs) {
					System.out.println("桃子数 = " + ts + " 时满足分桃条件");
				}
				fs += 1;
				return fT((t - 1) / 5 * 4);// 返回猴子拿走一份后的剩下的总数
			} else {
				// 没满足条件
				fs = 1;// 分的次数重置为1
				return fT(ts += 1);// 桃子数加+1
			}
		}
	}

	public static void main(String[] args) {
		new Dg().fT(0);
	}
}


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...