博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LightOJ 1393 Crazy Calendar(博弈)题解
阅读量:5127 次
发布时间:2019-06-13

本文共 856 字,大约阅读时间需要 2 分钟。

题意:r*c方格中,每个格子有一定石子,每次移动每格任意数量石子,只能向下或者向右动一格,不能移动为败

思路:显然是Nim,到右下曼哈顿距离为偶数的不用管,因为先手动一下后手动一下最后移到右下后还是先手的回合;奇数移动一格必到偶数格,所以奇数的Nim一下。很简单的入门题。

代码:

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
typedef long long ll;const int maxn = 5e4 + 10;const int seed = 131;const ll MOD = 1e9 + 7;const int INF = 0x3f3f3f3f;using namespace std;int main(){ int T, r, c, Case = 1; ll n, ans; scanf("%d", &T); while(T--){ ans = 0; scanf("%d%d", &r, &c); for(int i = 1; i <= r; i++){ for(int j = 1; j <= c; j++){ scanf("%lld", &n); int dis = r - i + c - j; if(dis & 1) ans ^= n; } } if(ans) printf("Case %d: win\n", Case++); else printf("Case %d: lose\n", Case++); } return 0;}

 

转载于:https://www.cnblogs.com/KirinSB/p/9706787.html

你可能感兴趣的文章
关于mysql中GROUP_CONCAT函数的使用
查看>>
OD使用教程20 - 调试篇20
查看>>
Java虚拟机(JVM)默认字符集详解
查看>>
Java Servlet 过滤器与 springmvc 拦截器的区别?
查看>>
(tmp >> 8) & 0xff;
查看>>
linux命令之ifconfig详细解释
查看>>
NAT地址转换
查看>>
Nhibernate 过长的字符串报错 dehydration property
查看>>
Deque - leetcode 【双端队列】
查看>>
Linux 普通用户拿到root权限及使用szrz命令上传下载文件
查看>>
人物角色群体攻击判定(一)
查看>>
JavaWeb学习过程 之c3p0的使用
查看>>
MySql Delimiter
查看>>
一步步学习微软InfoPath2010和SP2010--第九章节--使用SharePoint用户配置文件Web service(2)--在事件注册表单上创建表单加载规则...
查看>>
使用客户端对象模型读取SharePoint列表数据
查看>>
POJ 1328 Radar Installation 贪心
查看>>
gulp插件gulp-ruby-sass和livereload插件
查看>>
免费的大数据学习资料,这一份就足够
查看>>
clientWidth、clientHeight、offsetWidth、offsetHeight以及scrollWidth、scrollHeight
查看>>
MySQL(一)
查看>>