杂题思路 #1

2053 F - Earnest Matrix Complement

这题应该可以观察到,对于同一行,可以填充颜色的位置填上同一个颜色一定不劣。

可以先求出已知的贡献,然后对于一行,枚举上下出现的所有颜色,枚举其他颜色显然无意义,

可以设计动态规划,\(f_{i,j}\) 表示到第 \(i\) 行,填充的颜色是 \(j\) 的最大贡献,有如下状态转移方程。

\[f_{i,j}=\max(f_{i-1,j}+emp_iemp_{i-1},mx_{i-1})+emp_i(cnt_{i-1,j}+cnt_{i+1,j}) \]

这时可以发现,前面的部分相当于全局加,全局取 max,后半部分等于单点加。

可以设计神秘方法 O(1) 维护,显然也可以使用线段树。

2121 H - Ice Baby

注意到是单调不减的,考虑维护差分数组(实际上,在没有端点重合的情况下差分的值要么是 \(0\),要么是 \(1\)),考虑设计状态 \(dp_i\) 表示长度为 \(i\) 时的最小结尾。

现在考虑插入区间 [L, R],将其分为三段 \([1,L],(L,R], (R,n]\)

  • 第一段中的值不会发生变化。

  • 第二段中的 \(dp_j\) 可能在 \(dp_{j-1}\) 后接一个 \([l_i,r_i]\) 中的数来变得更小。有 \(dp_j=\max(dp_{j-1},l_i)\),实际上就是一个区间平移,然后将 \(dp_{L+1}\) 变为 \(l_i\)

  • 第三段中的数,只有 \(dp_{R+1}\) 可能会变为 \(\max(dp_R,l_i)=dp_R\)

可以 multiset 维护。

arc058_d

显然是动态规划,设计 \(f_{i,j}\) 表示匹配到第 \(i\) 个串,长度为 \(j\) 的最小字典序。

  • 状态数 O(nm),存储字符串需要 O(nm2) 空间,需要优化

字典序比较的特性:一旦在某个位置出现不同字符,后续字符无法改变比较结果。

  1. 有效性判断:只保留有可能成为最终答案前缀的DP状态
  2. 单调栈维护:对于每个i,维护一个有效DP值的栈,栈顶是当前最优串
  3. 状态转移:只有两种选择:
    • 不使用当前字符串:\(f_{i-1,j}\)
    • 使用当前字符串:\(f_{i-1,j|a_i|} + a_i\)

考虑单调栈优化。

  • 当前最优是候选的前缀:接受候选,更新栈
  • 当前最优小于候选:丢弃候选(无希望)
  • 当前最优大于候选:弹出栈中劣质解,直到找到候选的前缀

最后考虑使用 Z 函数完成字符串比较。

  • 最终复杂度:O(nm + Σ|a_i|)

2147 E - Maximum OR Popcount

显然可以贪心,先暴力把不做操作的答案算出来,然后考虑贪心计算,先把低位的 \(0\) 或成 \(1\) 一定不劣,注意到先考虑高位一定不会出问题。

对于先计算低位,可能出现一个数即被贡献成了低位,但是这个低位又被贡献成了高位。

可以证明,这种情况只要存在低位跟高位都需要被贡献,就一定会发生。

先计算高位可以保证被贡献成低位的数不会被高位覆盖。

然后暴力枚举就行了。

时间复杂度 \(O(t(nV^2+q\log V))\),其中 \(V = 31\)

【MX-S7-T2】「SMOI-R2」Speaker

考虑树链剖分,注意到答案等于 \(x\)\(y\) 路径上的一点,达到其他位置后进行演讲的最大值,加上两点间距离与两点权值。

【LGR-250】洛谷 NOIP 2025 模拟赛 T3 树上求值 tree

对于一个 \(x\) 钦定其一个祖先为 \(y\),满足 \(\operatorname{LCA*}(i,x) = y\)\(z\)\(y\) 的儿子,且 \(x\)\(z\) 的子树内。

那么 \(y\)\(x\) 的贡献是 \(f(u+d_y) - f(v+d_z)\),其中 \(u\)\(y\) 的子树内的点,\(v\)\(z\) 的子树内的点。

同时这个贡献还等于 \(f(u+d_z-1)-f(v+d_z)\)

现在问题转化成对于每一个 \(y\),求 \(f(u+d_y)\)\(f(u+d_y-1)\) 之和。

先考虑计算 \(f(u+d_u)\) 的方法。

考虑 01-Trie 维护,dfs 过程中,考虑对每个点维护一个 Trie,然后合并。

注意到 \(d_y\) 的枚举毫无前途。

考虑在 \(u\) 处插入 \(u+d_u\),而在 \(y\) 处是 \(u+d_y\),因为性质,所以向上合并时只需要全局减一即可。

考虑从低位到高位地处理 Trie。

\(f(u+d_u-1)\) 同理。

posted @ 2025-11-08 21:59  liheyang  阅读(8)  评论(0)    收藏  举报