欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

辅导资料 博弈问题(取球问题、组合博弈论)

程序员文章站 2022-06-20 12:15:01
...

一、取球游戏
辅导资料 博弈问题(取球问题、组合博弈论)

代码如下:

package sf_1;
//博弈问题
/*
 * f(局面 x) -->胜负?
 * for(对所有可能的走法){//进行暴力**
 *    试着走一步 -->局面y
 *    胜负   t=f(y) -->(我走了一步棋后,把残局交给对方去走)
 *    if(t==负)  return 胜;
 *    在试验过后 应该恢复局面。
 *  }
 *  return 负;//走了所有的走法 对方都赢 那么则我输。  
 */
public class Main {
    //局面:  n:所剩球的数目。
    public static boolean f(int n){
        if(n>=1&&f(n-1)==false)  return true;
        if(n>=3&&f(n-3)==false)  return true;
        if(n>=7&&f(n-7)==false)  return true;
        if(n>=8&&f(n-8)==false)  return true;
        return false;
    }
    public static void main(String[] args) {
        //10个球给我是赢的。
        System.out.print(f(10));
    }
}

运行截图:
辅导资料 博弈问题(取球问题、组合博弈论)

二、组合博弈论
辅导资料 博弈问题(取球问题、组合博弈论)