首页 > 其他 > 详细

博弈树取球博弈问题

时间:2014-03-10 22:26:11      阅读:550      评论:0      收藏:0      [点我收藏+]
package a;
/*博弈树取球博弈问题*/
public class MyA {
	
	// 判定程序,当前剩余球数目=x
	static boolean f(int x) {
		int[] op = { 1, 3, 7, 8 };
		//逐一判断这4种操作,如果可行就用这种操作
		for (int i = 0; i < op.length; i++) {
			if (x >= op[i]) {
				
				if (f(x - op[i]) == false)		//对手进行判断
					return true; 				// 对方必输,则己方必赢
			}
		}
		return false; 							// 无论怎样走棋,对方总是必赢,则己方必输
	}

	public static void main(String[] args) {
		//动态规划:已经计算好的子问题存储起来,以后直接取用
		//动态缓冲的方法。可以提高效率。
//		System.out.println(f(100));
//		 System.out.println(f(5-1));
//		 System.out.println(f(5-3));
		 System.out.println(f(20));
		// System.out.println(f(2));
	}

}
true


博弈树取球博弈问题,布布扣,bubuko.com

博弈树取球博弈问题

原文:http://blog.csdn.net/u011925500/article/details/20947083

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!