博弈
Icefox_zhx
这个作者很懒,什么都没留下…
展开
-
Codeforces Round #429
CF841A Generous Kefa(模拟)CF841B Godsend(博弈+数学)CF840A Leha and Function(贪心+组合数学)原创 2017-08-19 22:02:34 · 303 阅读 · 0 评论 -
poj1740 A New Stone Game(博弈论)
结论:偶数堆,相同数量的堆有偶数个,可以模拟操作的是必败局面。只有初始局面就必败,才先手必败,否则必胜。具体证明见dalao Visjiao博客:传送门#include #include #include using namespace std;#define ll long long#define N 110#define inf 0x3f3f3f3finline int re原创 2018-01-16 14:35:42 · 289 阅读 · 0 评论 -
bzoj2463 [中山市选2009]谁能赢呢?(博弈论)
如果n为偶数,一定存在棋盘完美覆盖(用1*2的多米诺骨牌恰好覆盖棋盘)。则容易发现,每次先手都是下在多米多骨牌的后一部分,所以先手必胜。如果n是奇数的话,除去左上角的1个格子,剩下的棋盘是存在完美覆盖的,容易发现,先手每次都是下在多米诺骨牌的前一部分,因此必败。原创 2018-01-24 20:01:11 · 308 阅读 · 0 评论 -
CF603C Lieges of Legendre(博弈论)
神奇的Sprague-Grundy’s Theorem(即sg函数,用mex来求)源起自NIM游戏,有了Grundy Number。大概就是说你可以通过把每种局面看做一个点,每种局面向他的子局面建有向边,构成一个DAG。然后对于一个给定的有向无环图,定义关于图的每个顶点的Sprague-Garundy函数g如下: g(x)=mex{g(y)|y是x的后继}。g(x)=mex{g(y)|y是x...原创 2018-03-09 20:46:17 · 408 阅读 · 0 评论 -
bzoj1022 [SHOI2008]小约翰的游戏(博弈论,Anti-SG)
Anti−SGAnti−SG游戏定义: 决策集合为空的操作者胜。 其余规则与SGSG游戏一致。SJ定理: 对于任意一个Anti−SG游戏,如果定义所有子游戏的SG值为0时游戏结束,先手必胜的条件: 游戏的SG值为0且所有子游戏SG值均不超过1。 游戏的SG值不为0且至少一个子游戏SG值超过1。 本题容易看出SG(x)=x大概证明;portal原创 2018-03-29 22:35:38 · 203 阅读 · 0 评论 -
bzoj2819 Nim(dfs序+树状数组+博弈)
我们知道Nim游戏是否先手必胜只需看异或和是否为0即可。 因此此题我们就是要维护路径异或和和单调修改。 可以dfs序+树状数组来做,维护每个点到根的异或和。原创 2018-04-09 20:22:18 · 218 阅读 · 0 评论 -
bzoj4589 Hard Nim(博弈论+fwt+快速幂)
搞出生成函数,把它异或卷积n次即可,最后答案就是0的系数。 fwt之后直接快速幂即可。再ifwt回来。 复杂度O(mlogm+mlogn)O(mlogm+mlogn)O(mlogm+mlogn)#include <bits/stdc++.h>using namespace std;#define ll long long#define inf 0x3f3f3f3f#de...原创 2018-05-25 14:42:05 · 517 阅读 · 0 评论 -
bzoj4035 [HAOI2015]数组游戏(博弈论sg函数+分块)
出题人kzf告诉我们,可以修改一下游戏的定义:每一步可以选择黑格子或白格子,最终能将所有格子都翻成黑色的人赢。由于每次翻转黑格子的操作都不可能直接带来胜利,而任何一步选取黑格子进行的有利操作都能由对方通过再翻一次这个格子抵消掉,根据假设“两个人都是足够聪明的”,我们知道游戏中一定不会有人选择黑格子。这就保证了这种转换的正确性。 因此我们可以把每个黑色的位置都看成偶数个白格子叠加起来得到...原创 2018-06-12 17:26:28 · 448 阅读 · 0 评论