04 2020 档案

摘要:首先画几个图玩一下,然后可以发现对答案的贡献是如下这种形式: 然后再进一步,他还可以是这种形式: 然后你试图把他扩展到一般形式,发现他限制非常多。 例如下图: 这是他的最优解,注意三个三叉子树只有一个能被完全选入。 原理大概是这样的: 所以一个点只有最多一个子树能被完全计入答案,其他的儿子只有一层有 阅读全文
posted @ 2020-04-13 09:56 wasa855 阅读(427) 评论(0) 推荐(0)
摘要:我是用 广义SAM+线段树合并做的,好像大家都没仔细讲,于是我来讲一下。 首先先建出 SAM,可以找出 SAM 中每一个点是在第几个字符串中出现的,在一棵动态开点的线段树上记录一下。然后把 SAM dfs 一遍,每一个点在每一个字符串的贡献加上他的 $son$ 的权值。 这里有一个问题:就是 SAM 阅读全文
posted @ 2020-04-10 22:23 wasa855 阅读(196) 评论(0) 推荐(0)
摘要:修了一些我发现的锅,可能还有一些锅,欢迎来锤 其实我也不知道是不是叫这个名字。 假设有一个数组 $a_0,a_1,...,a_{2^n}$ ,求一个数组 $b_x=\sum\limits_{i|x=x} a_i$ ,即子集和。(妈呀不就是 fwt_or 吗) 先上代码: 原理:从小到大枚举每一位,然 阅读全文
posted @ 2020-04-08 22:07 wasa855 阅读(297) 评论(0) 推荐(0)