6月杂题

P13662 「TPOI-5A」Luminescence

感觉比较牛的 trick,之前没见过。

经典性质 \(1\)

\[\sum_{l\le r} mex(q_l,q_{l+1},\dots,q_r) = \sum_{k} \sum_{l\le r} [区间 q_l \sim q_r 是否包含 0 到 k 所有数] \]

解释:根据 mex 的性质,容易发现该等式相当于将 mex 等价为了一个前缀,若 \(mex(S)=m\),则

  • \(0 \sim m-1\) 属于 \(S\)
  • \(m\) 不属于 \(S\)

经典性质 \(2\)

排列的区间 \(mex\) 等于补集 \(min\)

  • 在一个 \(0\sim n-1\) 的排列中,区间 \(a_l \sim a_r\)\(mex\) 等价于 \(min(a_1 \sim a_{l-1},a_{r+1} \sim a_n)\)

回到这个题,我们发现所有排列的贡献是相同的,计算一种排列的贡献即可。根据性质 \(1\) 是好求的。

P15652 [省选联考 2026] 排列游戏 / perm

排列的区间 mex 等于补集 min。有了这个性质,发现问题实际上转化成了,要求所有前缀 min 和后缀 min 相同。我们先用 \(n\) 次询问,可以得到 \(0\) 的位置,以及 \(pre\)\(suf\)。贪心的策略是从大到小填,把大的数填在前面,并且限制紧张的先填。

P5021 [NOIP 2018 提高组] 赛道修建

太经典了。显然二分答案,注意到所有的道路都会产生 \(1\) 的贡献,即贡献都是相同的。那我们贪心地,在 DFS 过程中将所有可行的道路,子树中能填好的就尽可能填好(因为即时子树中贡献了一个道路,那它对未来的贡献不可能超过 \(1\),显然是不优的)。每个子树 \(u\) 填完了之后,会留下来一个给祖先的链且以 \(u\) 为端点,然后把没有填好的最大的链的长度给 \(u\) 即可。具体实现二分,时间复杂度为 \(O(n \log^2 n)\)

posted @ 2026-06-04 23:29  LoserBpds  阅读(3)  评论(0)    收藏  举报