Chomp!游戏
来源:互联网 发布:ac100网络隔离 编辑:程序博客网 时间:2024/06/05 19:53
这是什么游戏呢?举个例子先。
有一个n*m的棋盘,每次可以取走一个方格并拿掉它右边和上面的所有方格。拿到左下角的格子(1,1)者输。那么谁会赢呢?
乍一看不太好解。其实答案很简单,除了n=m=1的情况,先手总能赢。
下面我们用反证法证明。
若后手能赢,则后手一定有必胜策略,也就是说后手取走了某个方格后先手必败。而事实上如果这个方格存在,先手完全可以先取走,那么后手必败,与假设矛盾。所以后手必败。注意这只是针对n*m>1的情况,如果n=m=1则先手必败,因为先手只能取那唯一的格子。
下面再举个例子。
有n张纸片摆在你面前,第i张纸片上写着数字i。每次可以取走一张纸片和数字是该纸片因数的纸片。问谁会赢?
和上面的例子差不多,只要n不为1,总是先手赢。
然后还有一个稍微难些的例子。
现在有一棵含n个节点的有根树,根节点是1,每个点初始时都是白色。每次可以把任意一个白色节点到根节点经过的所有的点(包括该节点)变成黑色。谁最后把整棵树染黑了,谁就输了。
不难看出,只要n不为1,还是先手赢。若后手选择一个节点后必胜,那先手完全可以“先下手为强”,则先手胜利。发现了吗?其实这棵树长什么样根本不用管,只要判断n就可以了。
3 0
- Chomp 游戏
- Chomp!游戏
- Chomp!博弈(巧克力游戏)
- Chomp game博弈游戏
- chomp
- chomp()
- Perl chomp
- chomp 用法
- chomp方法
- chomp 和 $/
- Chomp! Game
- chomp用法
- chomp操作符
- Perl chomp 操作
- chomp 与chop
- Perl chomp使用
- 2 Perl - chomp 操作
- [Perl]chomp 和 $/
- [leetcode]Strong Password Checker
- MATLAB的函数roipoly
- 关于Java中替换\的问题
- test
- jQuery 事件方法
- Chomp!游戏
- 拓扑排序
- 有向图强连通分量模板
- realpath
- ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
- c++之类和对象
- python 日志封装
- Codeforces Round #392 (Div. 2)E. Broken Tree
- JDK 1.8 List 多次 分组