网站备案到公司,永兴网站开发,兰州网站,千锋培训题意#xff1a;r*c方格中#xff0c;每个格子有一定石子#xff0c;每次移动每格任意数量石子#xff0c;只能向下或者向右动一格#xff0c;不能移动为败 思路#xff1a;显然是Nim#xff0c;到右下曼哈顿距离为偶数的不用管#xff0c;因为先手动一下后手动一下最后… 题意r*c方格中每个格子有一定石子每次移动每格任意数量石子只能向下或者向右动一格不能移动为败 思路显然是Nim到右下曼哈顿距离为偶数的不用管因为先手动一下后手动一下最后移到右下后还是先手的回合奇数移动一格必到偶数格所以奇数的Nim一下。很简单的入门题。 代码 #includeset
#includemap
#includestack
#includecmath
#includequeue
#includevector
#includecstdio
#includecstring
#includeiostream
#includealgorithm
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