摘要: 最后的遗言吗 阅读全文
posted @ 2025-02-21 19:20 lhzawa 阅读(45) 评论(0) 推荐(0)
摘要: \(\operatorname{FFT}\) 和 \(\operatorname{NTT}\) 都是在做加法卷积,从其形式 \(C_i = \sum\limits_{j = 0}^i A_j\times B_{i - j}\) 可以看出,其满足对应的下标 \(j + (i - j) = i\)。 考 阅读全文
posted @ 2024-02-05 09:21 lhzawa 阅读(61) 评论(0) 推荐(1)
摘要: 发现起点和终点不管怎么走都要经过,那就直接把最小的 \(2\) 个数分配到起点和终点即可。 对于第一行,有个挺容易想到的贪心策略,就是这行对应的 \(a_{1, i}\) 单增。 考虑若有 \(a_x > a_y, x < y\),那么如果这条路径从 \([1, x), [y, n]\) 下到第二行 阅读全文
posted @ 2024-01-29 14:55 lhzawa 阅读(33) 评论(0) 推荐(0)
摘要: 这个连边方式就可以理解为 \(1\) 为根,点 \(u\) 的父亲 \(fa_u\) 满足 \(fa_u < u\)。 重心有不止一种表示法,考虑用“子树 \(siz\ge \lceil\frac{n}{2}\rceil\) 最深的点”来表示重心。 令 \(m = \lceil\frac{n}{2} 阅读全文
posted @ 2024-01-25 15:52 lhzawa 阅读(20) 评论(0) 推荐(0)
摘要: 令 \(a\le b\le c\)。 这显然是可以通过交换得到的。 考虑若 \(a = 1\) 怎么做。 考虑到若把 \(b\) 或者 \(c\) 给 \(a\),\(a\) 就会翻倍。 那就把 \(b\) 拆成二进制,考虑让 \(b\) 变为 \(0\)。 从低位到高位,如果 \(b\) 这一位为 阅读全文
posted @ 2024-01-24 08:15 lhzawa 阅读(22) 评论(0) 推荐(0)
摘要: 乍一看好像怎么选都是 \(1 / 2\) 概率。 假设长度为 \(2\),或者可以理解为把串分为了长度为 \(2\) 的一个个小串。 考虑加上一点策略,对于 \(\text{Flim}\),为 \(\texttt{01}\) 就选 \(0 / 1\) 这样的。 感觉好像还是 \(1 / 2\),但是 阅读全文
posted @ 2024-01-21 19:25 lhzawa 阅读(46) 评论(0) 推荐(0)
摘要: 考虑当字符串全为 \(\texttt{b}\) 时,可以通过 \(\text{copy}\) \(n - 1\) 次再 \(\text{fuse}\) \(n\) 次。 这启发从连续段来做,先按顺序构造出一个个连续段,最后 \(\text{fuse}\) 合为这个串。 若第一个连续段为 \(\tex 阅读全文
posted @ 2024-01-21 15:50 lhzawa 阅读(24) 评论(0) 推荐(0)
摘要: 先转化题目条件。 发现把 \(n\) 个点划分为 \(2\) 个点集,满足其中一个点集存在哈密顿路,另一个点集在补图中存在哈密顿路和原问题是等价的。 令直接存在哈密顿路的点集为 \(X\),其路径端点分别为 \(S_X, T_X\);补图中存在哈密顿路的点集为 \(Y\),路径端点分别为 \(S_Y 阅读全文
posted @ 2024-01-21 10:43 lhzawa 阅读(29) 评论(0) 推荐(0)
摘要: 先处理循环的问题。 令 \(n = |t|, T = t + t\),那么对于 \(n \le i < 2n\) 的 \(i\),\([i - n + 1, i]\) 就对应着 \(t\) 循环得到的串。 对于一个串 \(t\) 在 \(s\) 的出现次数是好做的。 建出 \(s\) 的 \(\te 阅读全文
posted @ 2024-01-21 10:42 lhzawa 阅读(15) 评论(1) 推荐(0)