do_while_true

一言(ヒトコト)

上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 30 下一页
摘要: 分别仅考虑 \(A,C,G,T\),把匹配成功的位置取个交集就可以。 使用 FFT 来完成字符串匹配。 现在仅考虑 \(A\),把 \(S\) 中不会和 \(A\) 匹配上的位置上的字符设为 \(o\),把 \(T\) 中不是 \(A\) 的字符设为 \(\#\),则匹配函数 \(C(x,y)\) 阅读全文
posted @ 2021-09-24 18:53 do_while_true 阅读(30) 评论(0) 推荐(1) 编辑
摘要: 先钦点 \(a<b<c\),不失一般性。 选择成为先手,如果出现等差数列,且后手上一次不能对最大的进行操作,那么输出公差就赢了。 发现如果让 \(a,b\) 变成等差数列最后一项,都是让它们加上 \(2c-a-b\). 那么先输出 \(2c-a-b\),如果后手让 \(a,b\) 增加的话就赢麻了, 阅读全文
posted @ 2021-09-24 18:52 do_while_true 阅读(29) 评论(0) 推荐(1) 编辑
摘要: 以任意非叶节点为根求 dfs 树,设叶子节点为 \(k\),答案的下界是 \(\left\lceil\frac{k}{2}\right\rceil\),现在给出一组构造方案证明这个下界可以达到。 把叶子节点按照 dfn 排序,然后第 \(i\) 个叶子连向第 \(i+k/2\) 个叶子。 如果每条边 阅读全文
posted @ 2021-09-24 18:51 do_while_true 阅读(32) 评论(0) 推荐(1) 编辑
摘要: 设匹配函数 $C(x,y)$ 为字符 $x$ 和字符 $y$ 匹配的值,是我们自己定义的值。 两个字符串匹配的值就是对应位置上的字符匹配的值的和。 对于文本串 $S$ 和模式串 $T$,现在要求出 $T$ 在 $S$ 中所有匹配的位置。 为了化成卷积的形式,把 $T$ 反转。 这样 $T$ 和 $S 阅读全文
posted @ 2021-09-23 18:29 do_while_true 阅读(166) 评论(0) 推荐(1) 编辑
摘要: 假如只把相同颜色的果子放在一起,会剩下 \(\sum a\bmod k\) 个红果子,\(\sum b\bmod k\) 个绿果子,这是可以构造出来的答案的下界。 剩下的红果子个数 \(<k\),蓝果子个数 \(<k\),果子和 \(<2k\),最多会凑出一个篮子,所以答案的上界是我们可以轻易构造出 阅读全文
posted @ 2021-09-22 21:25 do_while_true 阅读(36) 评论(0) 推荐(1) 编辑
摘要: 设 \(f_i\) 为仅考虑前 \(i\) 个位置的答案。 \(f_i=\max\{f_j-sum(j+1,i)+calc(j+1,i),f_{i-1}\}\) \(sum(j+1,i)\) 为 \(c\) 区间和,\(calc(i,j)\) 为完全在 \([i,j]\) 中的演出收益和。 做一个扫 阅读全文
posted @ 2021-09-22 21:25 do_while_true 阅读(34) 评论(0) 推荐(1) 编辑
摘要: 实际上就是个位运算卷积的背包,只需要每个 \(F_i=x^{a_i}+x^{U}\) 位运算卷积卷起来即可(\(U\) 是全集),如果直接暴力把每个 \(F\) 都卷起来是 GG 的,注意到这个做 FMT 也就是后缀和,所有位置不是 \(1\) 就是 \(2\),或者说只有 \(a_i\) 的前缀是 阅读全文
posted @ 2021-09-22 21:24 do_while_true 阅读(24) 评论(0) 推荐(1) 编辑
摘要: 对于 \(f(k)\) 的计算,先计算把 \(1\sim k\) 移成连续段,然后再计算逆序对数(最小交换次数使得一个排列排好序)。 至于为什么是对的?感性理解一下,首先排好序一定要有个逆序对的代价,假如两个数之间没有相邻,则交换它们需要一步一步走过去,这样的花费就高了。 考虑 \(f(k-1)\t 阅读全文
posted @ 2021-09-22 21:23 do_while_true 阅读(32) 评论(0) 推荐(1) 编辑
摘要: 对图黑白染色,设黑色格子数为 \(s_1\),白色格子数为 \(s_2\),答案为 \(\min(s_1,s_2)\). 最大可能的答案显然是 \(\min(s_1,s_2)\),只要证明一定存在方案能达到这个答案即可。 因为两种颜色是对称的,先假设黑色格子数大于白色个数。 如果有两个相邻的长度相同 阅读全文
posted @ 2021-09-22 21:23 do_while_true 阅读(34) 评论(0) 推荐(1) 编辑
摘要: 想到点分树就做完了( 假如能维护 \(c_x\) 为 \(x\) 子树内离 \(x\) 最近的红色点距离。 一开始想的是树剖这个东西,询问拆成查询它到根的链中最低的红点,和以它到根的链中的点为 LCA 的红点。前者很容易树剖两个 \(\log\) 解决。如果维护的 \(c_x\) 都是加上它到重链底 阅读全文
posted @ 2021-09-22 21:23 do_while_true 阅读(49) 评论(0) 推荐(1) 编辑
上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 30 下一页