[poj2311]Cutting Game_博弈论
Cutting Game poj-2311
题目大意:题目链接
注释:略。
想法:
我们发现一次操作就是将这个ICG对应游戏图上的一枚棋子变成两枚。
又因为SG定理的存在,记忆化搜索即可。
最后,附上丑陋的代码... ...
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#define N 250
using namespace std;
bool vis[N]; int sg[N][N];
int n,m;
int dp(int x,int y)
{if(sg[x][y]!=-1) return sg[x][y];memset(vis,false,sizeof vis);for(int i=2;i<=x-i;++i) vis[dp(i,y)^dp(x-i,y)]=1;for(int i=2;i<=y-i;++i) vis[dp(x,i)^dp(x,y-i)]=1;for(int i=0;;i++) if(!vis[i]) {sg[x][y]=i; return i;}
}
int main()
{memset(sg,-1,sizeof sg);sg[2][2]=sg[2][3]=sg[3][2]=0;while(scanf("%d%d",&n,&m)==2){if(dp(n,m)) puts("WIN");else puts("LOSE");}return 0;
}
/*7
2 2
3 2
4 2
*/
小结:SG定理应用极为广泛。
转载于:https://www.cnblogs.com/ShuraK/p/9614586.html
[poj2311]Cutting Game_博弈论相关推荐
- 【题解】POJ2311 Cutting Game
link 题目大意 有一 W × H W\times H W×H 的矩阵,两人博弈,每次可以沿网格水平切割或竖直切割,当切割后出现 1 × 1 1\times 1 1×1 的格子则获胜.给定 W , ...
- [poj2234]Matces Game_博弈论
Matches Game poj-2234 题目大意:n堆石子的Nim游戏,anti-SG. 注释:$1\le n\le 20$. 想法:用Colon定理即可.具体见:小约翰的游戏 最后,附上丑陋的代 ...
- OI每周刷题记录——lrllrl
看这标题就知道我是模仿的hzwer大佬,远程%%% 大佬的OI经历让蒟蒻我深受感触,为了晚一些AFO本蒟蒻也得加油了 从高二上期第一周开始计数,每个星期天更一次,一直更到我AFO 如果这是我此生最后一 ...
- 博弈论探讨及题目总结
转载自爱神博客:http://blog.csdn.net/acm_cxlove/article/details/7854526 首先当然要献上一些非常好的学习资料: 基础博弈的小结:http://bl ...
- 博弈论——公平组合游戏与SG函数
参考自算法竞赛进阶指南 公平组合游戏与有向无环图 一个博弈游戏被称为公平组合游戏(ICG)当且仅当其同时满足3个条件 由两名玩家交替行动 游戏任意时刻可进行的操作与轮到哪名玩家无关 不能进行操作的玩家 ...
- ICPC程序设计题解书籍系列之三:秋田拓哉:《挑战程序设计竞赛》(第2版)
白书<挑战程序设计竞赛>(第2版)题目一览 白书:秋田拓哉:<挑战程序设计竞赛>(第2版) 第1章 蓄势待发--准备篇(例题) POJ1852 UVa10714 ZOJ2376 ...
- 在Linux上安装IDA的命令,Linux安装IDA神器
[Phylab2.0]Alpha版本项目展示 团队成员 冯炜韬(PM)http://www.cnblogs.com/toka 岳桐宇(后端)http://www.cnblogs.com/mycraft ...
- POJ前面的题目算法思路【转】
1000 A+B Problem 送分题 49% 2005-5-7 1001 Exponentiation 高精度 85% 2005-5-7 1002 487-3279 n/a 90% 2005-5- ...
- POJ 超详细分类
POJ 各题算法 1000 A+B Problem 送分题 49% 2005-5-7 1001 Exponentiation 高精度 ...
最新文章
- VC++读取txt文件指针的变化
- 并发编程11-测试并发程序
- OpenCV之core 模块. 核心功能(2)基本绘图 随机数发生器绘制文字 离散傅立叶变换 输入输出XML和YAML文件 与 OpenCV 1 同时使用
- 网络安全系列之三十五 缓冲区溢出
- 搞定系统设计 02:估算的一些方法
- SQLServer下 存储过程内 包含事务 及 返回处理是否成功
- JSP静态导入与动态导入
- 例子---PHP与Form表单之一
- XPath最通俗的教程(ZZ)
- 02.C(数据类型与运算符)
- 操作系统课程设计-模拟操作系统
- 用计算机怎么管理小米路由器,小米路由器电脑怎么设置_小米路由器怎么用电脑设置?-192路由网...
- 固态硬盘SSD闪存芯片的颗粒类型 和 颗粒等级
- Google Play 开发者注意事项
- python html 补全标签_补充:HTML标签和CSS
- 一个屌丝程序员的青春(四二)
- python中将字符变为大写_python3 数字转人民币大写
- 根据起始点经纬度、距离、方位角计算目标点经纬度的方法
- 大学计算机应用基础屈立成,五笔字型输入法教程-计算机应用基础教学网.PDF
- html5支付成功页面,订单完成页面视图《 微信支付:H5 移动端支付 》