博弈论
文章平均质量分 76
neither_nor
这个作者很懒,什么都没留下…
展开
-
BZOJ4702 装箱游戏
一眼sg函数…… 但是c太大了,不过我们发现如果n>根号c,那么如果m>1的话一定是先手必胜的,所以n>根号c的部分只算m=1的就行了 考虑一下什么时候能平,当且仅当n初始得1,且对于任意的n=2,m=i,i>=初始的m的情况,都是先手必胜,那么两人都只能一直加m,然后就会平 复杂度(m sqrt c) #include #include #include #include #includ原创 2016-11-09 13:29:01 · 726 阅读 · 0 评论 -
BZOJ4134 ljw和lzr的hack比赛
今年清华集训D1T1-_- 首先我们可以想到n^2的算法,我们对每个点记录一个sg[x],代表以x为根的子树的游戏的sg函数值,然后我们再对每个点记录rem[x],代表删掉从x到根的路径后剩余的游戏的sg值的异或和。 容易发现在我们计算x的sg值的时候,x的rem是他所有儿子的sg值的异或和,而对于x的每一个儿子y,y的子树里的所有rem值都会异或rem[x]^sg[y] 然后我们求第一个不原创 2016-12-09 08:59:27 · 1202 阅读 · 0 评论 -
BZOJ4730 UOJ#266【清华集训2016】Alice和Bob又在玩游戏
同BZOJ4134-_- #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define MAXN 200010 #define MAXM 400001原创 2016-12-26 15:50:45 · 989 阅读 · 0 评论 -
BZOJ3576 [Hnoi2014]江南乐
对每个数预处理一下sg函数即可 考虑如何处理 如果我们把x分成i份,那么一定会分成p个x/i和q个x/i+1,那么因为sg函数是异或起来的,所以分完之后的局面的sg只就只跟x/i的值和p,q的奇偶性有关 我们知道对于一个数x,和i 而对于取值相同的i,如果p,q的奇偶性会发生变化,那么一定每次令i+1奇偶性都会发生变化 所以我们就可以O(n sqrt n)预处理sg值了 注意pe原创 2017-03-27 14:47:09 · 416 阅读 · 0 评论