10.14XJ模拟赛

过于困难了一点
T2:
如果按照一直取num/b自己能赢,那么我们要证明无论b怎么取,a都能回到正轨。这是一个比较常见的思路。
但是此题不平凡的数据范围又给了我们启发,n<=20
我们每一个人每次都取一个,那么就是
对于多堆的游戏,其状态就是每一堆的sg函数的异或
那么暴力把sg搞出来,我们看下规律
首先如果i%j==0,那么sg=i/j
大力找规律
并没有找到!
T3:
嘿!下一题!期望!下一题!
T4:
wc异或,想当年01trie还是我讲的。同时这题还是对于每个节点求值,想到trie合并。好的,我们现在就利用01trie暴力加就可以了假了,好的
一个01trie加上暴力就60啊

怎么有人过t2t3了,大佬啊,wc

考虑t2的sg函数。

sg(0...b-1)=0
sg(b)=1
sg(2b)=1
sg(b+1~2b-1)=010101010.....
sg(2b+1,b)=
sg(n...n-n/b)={0,1,...,n/b}
额,上面证错了
考虑对n/b进行分类,那么sg(1~2b-1)成立
sg(2b)成立,sg(2b+k)(k < b) =mex(sg(2b+k-1),sg(2b+k-2))
sg(2b) sg(2b-1) sg(2b+1)
2 0 1
2 1 0
sg(2b+2)=2
然后就是0,1,2滚,然后sg(3b)=3
然后就是0,1,2,3滚
所以我们可以得到sg(n)=sg(n-n/b-1)这样就是一段一段滚了,然后发现可以一下滚好多段,也就是我们要求最多滚多少段才能,这个显然是简单的。
到底要怎么样才能被整除!
然后一个非常精巧的while直接解决。

这场考试期望200=100+30+10+60主要是太摆了,还有你找规律最多10分钟,找规律也要

posted @ 2025-07-09 10:30  wuhupai  阅读(2)  评论(0)    收藏  举报