外网工业设计网站,移动互联网的主要特点,太仓公司做网站,字体设计生成器一#xff0c;区字棋
也叫憋死牛棋。 规则#xff1a;
棋盘一共只有5个点#xff0c;双方各2个棋子#xff0c;还有一个空格。
先手必须移动左边的棋子#xff0c;之后没有限制#xff0c;2个棋子任意一个移动到空格皆可。
无法移动者判负。
二#xff0c;不败策略…
一区字棋
也叫憋死牛棋。 规则
棋盘一共只有5个点双方各2个棋子还有一个空格。
先手必须移动左边的棋子之后没有限制2个棋子任意一个移动到空格皆可。
无法移动者判负。
二不败策略
因为失败的阵型是固定的要么2个都在上面要么2个都在下面只有这样才有可能被堵住。
所以不败策略也很简单任意状态下轮到任意方行动时都至少有1种行动方法不会走到固定的失败阵型这就是不败策略了。
三有向有环图分析
1最长非零链
用博弈论分析这个属于有向有环图游戏上面的不败策略其实就是说该有向图的等价图中最长的非零链的长度为1
我们来验证一下。
1给所有状态编号 假设蓝色棋子分别在i,j空格在k那么我们编号为i*25j*5k其中0i,j,k5
所有状态的编号都在0到124之间但其中有小部分是非法状态ijk重复合法状态只有60种。
考虑到2个棋子相同的话实际上只有30个不同的合法状态。
2构建有向图
int getId(int i, int j, int k) {return i * 25 j * 5 k;
}
vectorint getIjk(int id) {return vectorint{id / 25, id % 25 / 5, id % 5};
}
vectorint getNext(int id) {auto v getIjk(id);}
mapint, vectorint bfs(int id)
{queueintq;mapint, intvisit;q.push(id);visit[id] 1;while (!q.empty()) {int t q.front();q.pop();}
}