摘要:
题面 Translation 有一个 \(n\times n \ (1 \leq n \leq 10^6)\) 的正方形网格,用红色,绿色,蓝色三种颜色染色,求有多少种染色方案使得至少一行或一列是同一种颜色。结果对 \(998244353\) 取模。(翻译来自洛谷) Solution 发现直接求很困 阅读全文
摘要:
题面 首先考虑 \(k = 1\) 的情况。 发现每条线段对前后的答案都有影响,所以按左端点排序,从左到右处理。 记 \(f_i\) 表示以 \(i\) 为结尾的线段集合的答案,最终答案即为 \(\sum_{i=1}^{2n} f_i\) 。 对于每条加进来的线段 \(\begin{bmatrix} 阅读全文
摘要:
题面 本文记录一种递推优化套路。 可以发现,若将答案表示成 \(\sum_{i=1}^{n} \alpha_i i^k\) 的形式时,系数 \(\alpha_i\) 满足以下性质。 \(\alpha_i = 1 + 1 + 2 + 4 + \dots + 2^{n-i-2}\) 所以求得: \[ \ 阅读全文
摘要:
题面 Translation 有一条路径上共有 \(k\) 条边,第 \(i\) 条边边权为 \(w_i\) ,定义该路径权值为 \(\sum\limits_{i=1}^{k}{w_i} - \max\limits_{i=1}^{k}{w_i} + \min\limits_{i=1}^{k}{w_i 阅读全文
摘要:
C - Mandarin Orange 提供一种不一样的 \(\mathcal{O}(n \log n)\) 的方法。 设对于第 \(i\) 个位置,左边第一个大于它的位置记为 \(L_i\) ,右边第一个大于它的位置记为 \(R_i\) 。 发现对于第 \(i\) 个位置的值作为 \(x\) 时的 阅读全文
摘要:
题目链接 P4052 [JSOI2007] 文本生成器 P3311 [SDOI2014] 数数 P2292 [HNOI2004] L语言(数据已加强) [JSOI2007] 文本生成器 计数 DP 很显然的补集转换,设不可读文本数量为 \(sum\) ,\(Ans = 26^m - sum\) 。 阅读全文
摘要:
题面 首先有树形 DP 。 设 \(P_{u,val}\) 表示 \(u\) 节点值为 \(val\) 的概率,\(lc\) 表示左儿子, \(rc\) 表示右儿子。 有转移: \(P_{u,val} \gets P_{u,val} + P_{lc,val} \times p_u \times \s 阅读全文
摘要:
题面 先观察操作,了解我们要维护什么 0. i x h 稍加思考发现将一格水面提升至 \(h\) 高度会影响到从该格向左到第一个左隔板高于 \(h\) 以及该格向右到第一个右隔板高于 \(h\) 的所有格子 所以为维护此操作,我们要查询上述的最左最右格以及修改被影响部分的水面高度 自然我们要维护区间 阅读全文
摘要:
Luogu 题面 & CodeForces 题面 通过手玩,易知只有大于或小于当前数 \(k\) 的状态才会对答案有所影响,也就是说当前数的大小不重要,重要的是与 \(k\) 的大小关系。 这样原来的序列只有两种: \(\{k,>k,>k,>k,>k,\dots\}\) 或 \(\{k,<k,<k, 阅读全文
摘要:
题面 一道 simple 的树形 DP 设状态 \(f(i,j,0/1,0/1)\) 表示在节点 \(i\) 作为根节点的子树内 该节点用了 \(j\) 个监听设备 该节点不放/放 该节点在该子树内被不被监听/被监听 的方案数 \[ \begin{cases} \ f(u,0,0,0) = 0\\ 阅读全文