题目把Nim游戏为什么可以取异或和讲解得十分清楚,建议多读几次,理解一下 再一个,可以把每次异或视为一次取数,因此(k[i]^sg)<k[i]即为一种可行操作 /* Nim is a 2-player game featuring several piles of stones. Players a ...
分类:
编程语言 时间:
2020-02-20 13:10:16
阅读次数:
76
"题目" 显然对每一堆石子求一个SG之后异或起来就好了。 这个SG看起来只能$O(n^2)$的样子啊,考虑找规律; 一下是$k=3$时的一些SG函数的值 不难发现一些规律 $$ \operatorname{SG}(n) = \begin{cases} 0 & 0 \le n \sqrt{n}$,于是 ...
分类:
其他好文 时间:
2020-02-20 09:26:19
阅读次数:
75
"Link" Multi SG模板题。 设$sg_u$为$u$子树的SG函数值,$S_u$为$u$到删除根节点的路径之后剩下的游戏的SG函数值的异或和。 根节点的$S$就是它所有子树的SG函数值的疑惑和。 在求出$S_u$之后,它的所有儿子$v$的$S_v$需要异或上$S_u\oplus sg_v$ ...
分类:
其他好文 时间:
2020-02-12 22:08:18
阅读次数:
76
大概没你们说得复杂吧...... $Part\;1$ $Nim$游戏 大家都对异或和感到懵逼吧(排除大佬),其实很简单,用$SG$函数~~打表~~计算即可解决: 抛个板子: 都看了,没个赞不好吧,大佬你觉得呢? ...
分类:
其他好文 时间:
2020-02-12 22:06:13
阅读次数:
77
一个 $(l,r)$ 有两个后继,所以 sg 值最大只有 2,$r-l+1$ 相等的 pair 的 sg 值相同,那么就枚举 $d=r -l+1$,对于一个 $d$ 很容易求有多少对 $(l,r)$ 满足 $r-l+1=d$ 打表发现 $d$ 的 sg 值最多只有 100 段。 设 $g_i$ 表示 ...
分类:
其他好文 时间:
2020-02-01 17:51:58
阅读次数:
86
题目链接 "P1290" and "UVA10368" (双倍经验【虽然标签差距很有趣】) 题目大意 给定两个数$n$和$m$,每次操作可以用较大数减去较小数的正整数倍,不可以减成负数。 先获得一个$0$的人获胜,问先手是否必胜。 多组数据。 Solution 一眼博弈论题吧2333 $SG$函数和 ...
分类:
其他好文 时间:
2020-01-31 20:27:32
阅读次数:
72
以下内容摘自:https://blog.csdn.net/strangedbly/article/details/51137432 Nim游戏 重点结论:对于一个Nim游戏的局面(a1,a2,...,an),它是P-position当且仅当a1^a2^...^an=0,其中^表示位异或(xor)运算 ...
分类:
其他好文 时间:
2020-01-29 10:22:07
阅读次数:
76
题链 tips: 1.对于简单的Nim游戏,a1^...an;ai就是sg函数值。 2.一堆石子就是一个有向图;可以按条件转移局面。 3.sg函数的定义有递归的味道,所以用记忆化搜索来写。 5.sg(x)=k,则局面x可以转移到0~k-1。 4.puts输出字符串会自动换行 //sg函数的定义本身就 ...
分类:
其他好文 时间:
2020-01-27 13:59:07
阅读次数:
87
一、代码 import sys if sys.version_info[0] >= 3: import PySimpleGUI as sg else: import PySimpleGUI27 as sg import time sg.ChangeLookAndFeel('Black') sg.Se ...
分类:
其他好文 时间:
2020-01-21 16:04:54
阅读次数:
292