摘要: FFT 的三变二优化 很简单,利用等式 \((A+Bi)^2=A^2-B^2+2ABi\)。 速度确实很快。 迭代实现 先二进制翻转,然后从下往上进行迭代计算。 for(int i=0;i<o;i++) rev[i]=(rev[i>>1]>>1)|((i&1)<<(l-1)); for(int i= 阅读全文
posted @ 2024-06-01 10:32 yzy4090 阅读(24) 评论(0) 推荐(0)
摘要: 弦图,没有证明。 前置知识:\(\omega(G),\chi(G),\kappa(G),\alpha(G)\) 分别对应:最大团,最小染色,最小团覆盖,最大独立集 有 \(\omega(G)\le\chi(G),\alpha(G)\le\kappa(G)\) 弦图:一个无向图称为弦图,当且仅当图中任 阅读全文
posted @ 2024-05-30 17:33 yzy4090 阅读(41) 评论(0) 推荐(0)
摘要: manacher 充分利用了之前计算过的数组,翻转回文串还是回文串的性质。 能拓展的东西不多,最多搞个二维的(paper-cutting),或者换一下匹配的模式(antisymmetry)。一般的题都把它作为中间步骤。 例题:Palindrome Construction 看似是反向 manache 阅读全文
posted @ 2024-05-30 11:47 yzy4090 阅读(20) 评论(0) 推荐(0)
摘要: 01 trie 在 01 trie 中,若有 \(n\) 个数,每个数的二进制长度为 \(L\),则空间复杂度为 \(\mathcal O(nL)\),任何字典操作(存在性,插入删除,前驱后继,最大最小值)的时间复杂度都为 \(\mathcal O(L)\)。 但是才 \(L\)?我们有没有方法把所 阅读全文
posted @ 2024-05-29 09:35 yzy4090 阅读(149) 评论(0) 推荐(0)
摘要: 先搬一点热带运算的东西: 热带运算 热带运算(tropical arithmetic)是将加法 \(\oplus\) 定义为 \(\max\)(或 \(\min\),此处仅讨论 \(\max\) 的部分),将乘法 \(\odot\) 定义为 \(+\) 的运算,在 \(\mathbb{\bar R} 阅读全文
posted @ 2024-05-28 09:40 yzy4090 阅读(55) 评论(0) 推荐(0)
摘要: 各种剖分、分解、人类智慧 树上启发式合并 树上启发式合并可以帮助我们解决一些无修改,查询仅在子树内进行的题目。 树上启发式合并的基本想法是让小的树成为大的树的子树。 看到大树和小树,可以先重链剖分,然后递归计算子节点的答案,再合并重儿子、“轻儿子的儿子”和自己的贡献,清空统计数组。注意在递归计算轻儿 阅读全文
posted @ 2024-05-25 16:46 yzy4090 阅读(18) 评论(0) 推荐(0)
摘要: 单调队列太抽象,树状数组带 \(\log\),有没有直观好写好调试的滑动窗口问题解决方案?可以使用线性分块(不是带根号的)。 可以发现有一个位置集合 \(S\) 满足每个时刻都有且仅有一个位置被滑动窗口覆盖。如对于长度为 \(3\) 的滑动窗口(指在一个时刻可以覆盖三个连续的位置)和一个下标从 \( 阅读全文
posted @ 2023-08-11 00:44 yzy4090 阅读(19) 评论(0) 推荐(0)
摘要: 原题链接 题意: 本题要求我们在 \(n\times m\) 的方格中放置大小为 \(3\times3\) 的 T,可以旋转,但不能重叠。T 形如: ### # # # # ### ### # # # # ### 输出一种可以放置最多 T 的方案,使用不同的大写字母表示不同的 T。 思路: 我们可以 阅读全文
posted @ 2022-11-26 09:43 yzy4090 阅读(12) 评论(0) 推荐(0)