摘要: 很简单的可以知道 如果P在V的右上角 必输 如果P在V的左下角 必赢 接下里还剩下左上角和右下角两种情况 两种情况其实相同 P是挡不住V通过对角线方向向下/左的移动的 即两者不会相互影响 所以我们只要比较两者走到终点所需时间的长短即可 #include<bits/stdc++.h> using na 阅读全文
posted @ 2019-04-01 20:53 Aragaki 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 写出SG表 发现SG函数规律为Mi%(Li+1) #include<bits/stdc++.h> using namespace std; int main() { int t; cin >> t; while (t--) { int n; cin >> n; int ans = 0; for (i 阅读全文
posted @ 2019-04-01 13:22 Aragaki 阅读(94) 评论(0) 推荐(0) 编辑
摘要: P:先手必输 N:先手必胜 PN图规则:如果一个点能转换到的所有点都是N,那么此点状态为P。若能转化到一个P,即使对手面临必输状态,此点为N. 然后找规律就行 #include<bits/stdc++.h> using namespace std; int main() { int n, m; wh 阅读全文
posted @ 2019-04-01 11:34 Aragaki 阅读(146) 评论(0) 推荐(0) 编辑
摘要: n*n的矩阵如果n为偶数 则可被1*2的矩形完全覆盖 如果n为奇数 则除起点外 其他各自可被1*2矩形完全覆盖 所以当n为偶数 先手赢 n为奇数 后手赢 #include<bits/stdc++.h> using namespace std; int main() { int a, b; while 阅读全文
posted @ 2019-04-01 11:01 Aragaki 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 两堆石子每次可以在大堆中取小堆的倍数个石子 第一个拿光某个堆的玩家赢 假设a>=b 必胜状态:a%b==0或a/b>=2 因为当a/b>=2时 当前玩家可以选择将状态转移至 a%b+b或a%b 同时a%b+b可转移至a%b 则这两个状态中必有一个为必胜态 #include<bits/stdc++.h 阅读全文
posted @ 2019-04-01 10:41 Aragaki 阅读(146) 评论(0) 推荐(0) 编辑