02 2018 档案
HDU 1404 Digital Deletions (暴力博弈)
摘要:题意:给定一个数字串,最长是6,然后有两种操作。 第一种是,把该串中的一个数字换成一个比该数字小的数,比如 5 可以换成 0,1,2,3,4. e.g. 12345 --> 12341 第二种是,把数字 0 以及它后面的数都删掉,e.g. 120154 --> 12 析:因为数字最长是 6 位,所以
阅读全文
HDU 2147 kiki's game (奇偶博弈)
摘要:题意:给定一个 n * m 的格子,从右上角(1, m) 开始每个玩家只能从向下,向左,或者向左下走,谁不能走,谁输。 析:自己做出来,看了网上的几个博客,好像都没说为什么是只有全奇的情况才会输,个人的理解如下,如果不对,欢迎指正。 首先,从(1, m) 走到 (n, 1) 这才是一个完整的,也就是
阅读全文
HDU 1079 Calendar Game (博弈或暴搜)
摘要:题意:给定一个日期,然后 A 和 B 双方进行操作,谁先把日期变成2001年11月04日,将获胜,如果超过该日期,则输了,就两种操作。 第一种:变成下一天,比如现在是2001.11.3 变成 2001.11.4 第二种,变成下一个月的同一天,比如现在是2001.10.3 变成 2001.11.3,当
阅读全文
HDU 1517 A Multiplication Game (SG函数找规律)
摘要:题意:两个玩家玩一个游戏,从 p = 1,开始,然后依次轮流选择一个2 - 9的数乘以 p,问你谁先凑够 p >= n。 析:找规律,我先打了一下SG函数的表,然后就找到规律了 我找到的是: 1 - 9 Stan wins. 1 ~ 9 10 - 18 Ollie wins. 9+1 ~ 9*2 1
阅读全文
HDU 3980 Paint Chain (SG函数)
摘要:题意:给定一个圆环,上面有 n 个无色的珠子,然后有两个玩家,每次玩家要选连续的 m 个珠子染成不存在的颜色,染过的不能再染,谁不能染,谁输,问你谁胜。 析:一个SG函数的应用,首先这是一个环,不好做,把它变成线才好做,怎么变呢,很明显,第一个玩家涂是任意涂的,所以当它涂完,剩下的就可以成一个长度为
阅读全文
UVa 10561 Treblecross (SG函数)
摘要:题意:给定上一行字符串,其中只有 X 和 . 并且没有连续的三个 X,两个玩家要分别在 . 上放 X,如果出现三个连续的 X,则该玩家胜利,现在问你先手胜还是败,如果是胜则输出第一步可能的位置。 析:首先,如果输入中出现了 XX 或者 X.X,那么先手必胜,这种可以先处理,然后考虑剩下的,首先每个玩
阅读全文
HDU 1536 S-Nim (组合游戏+SG函数)
摘要:题意:针对Nim博弈,给定上一个集合,然后下面有 m 个询问,每个询问有 x 堆石子 ,问你每次只能从某一个堆中取出 y 个石子,并且这个 y 必须属于给定的集合,问你先手胜还是负。 析:一个很简单的博弈,对于每组数据,要先处理出SG函数, 然后使用组合游戏和来解决就ok了,对于求sg函数,很明显,
阅读全文
51Nod 1185 威佐夫游戏 V2 (威佐夫博弈)
摘要:1185 威佐夫游戏 V2 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 1185 威佐夫游戏 V2 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 1185 威佐夫游戏 V2 基准时间限制:1 秒 空间限制:131072 KB 分值:
阅读全文
CodeForces 235E Number Challenge (莫比乌斯反演)
摘要:题意:求,其中d(x) 表示 x 的约数个数。 析:其实是一个公式题,要知道一个结论 知道这个结论就好办了。 然后就可以解决这个问题了,优化就是记忆化gcd。 代码如下:
阅读全文
HDU 5321 Beautiful Set (莫比乌斯反演 + 逆元 + 组合数学)
摘要:题意:给定一个 n 个数的集合,然后让你求两个值, 1。是将这个集合的数进行全排列后的每个区间的gcd之和。 2。是求这个集合的所有的子集的gcd乘以子集大小的和。 析:对于先求出len,len[i]表示能够整除 i 的的个数。 第一个值,根据排列组合,求出gcd是 i 的倍数的个数, 解释一下这个
阅读全文
HDU 5663 Hillan and the girl (莫比乌斯反演 + 分块)
摘要:题意:给定n,m,求,其中F(x)=0,,如果x是完全平方数,否则是1。 析: 由于按照题意的F,不好筛选,所以我们反过来,F(x),x是平方数,就是1,否则是0。 这个是可以预处理出来的,可以用筛选。 这一部分,可以分块来做,所以时间复杂度就降下来了。 代码如下:
阅读全文
HDU 5468 Puzzled Elena (dfs + 莫比乌斯反演)
摘要:题意:给定一棵带权树,求每个点与其子树结点的权值互质的个数。 析:首先先要进行 dfs 遍历,len[i] 表示能够整除 i 的个数,在遍历的前和遍历后的差值就是子树的len值,有了这个值,就可以使用莫比斯反演了。注意如果子树的权值是1,还要加上它本身。 代码如下:
阅读全文
HDU 5656 CA Loves GCD (容斥)
摘要:题意:给定一个数组,每次他会从中选出若干个(至少一个数),求出所有数的GCD然后放回去,为了使自己不会无聊,会把每种不同的选法都选一遍,想知道他得到的所有GCD的和是多少。 析:枚举gcd,然后求每个gcd产生的个数,这里要使用容斥定理,f[i]表示的是 gcd 是 i 的个数,g[i] 表示的是
阅读全文
HDU 5212 Code (莫比乌斯反演)
摘要:题意:给定上一个数组,求 析: 其中,f(d)表示的是gcd==d的个数,然后用莫比乌斯反演即可求得,len[i]表示能整队 i 的个数,可以线性筛选得到, 代码如下:
阅读全文
HDU 4746 Mophues (莫比乌斯反演)
摘要:题意:给定n,m,p,问1~n,和1~m中,有多少对数满足F(gcd(i, j)) <= p,F(x) 表示 x 的质因数的个数。 析:首先要能够判断出来,如果p>=20,那么答案就是n * m,因为质因子再多,就超了5e5了,这样的话,我们就好做多了,可以用莫比乌斯反演里德优化 有了这个式子,其中
阅读全文
浙公网安备 33010602011771号