day10
Connect the Dots
把序列看成环,那么上界是一个三角剖分。
对于有至少三色的情况,这个上界是可以取到的。
Postman
比之前做得高妙?
考虑下界是起点往左一次,然后走到底再往左到终点一次。
矛盾是往右次数不够多。
对每条边贡献的往右次数分讨,这个东西跟它被覆盖的次数也有关。
需要把一些边增加覆盖次数以减少往右次数,对权值小的那些边做就好。
Treelection
是个原。
考虑二分一个阈值 \(w\),\(w-1\) 是都不行的,\(w+1\) 是都行的,\(w\) 的特殊判断一下即可。
Magic
对于包含的区间好做,相交的区间右端点连左端点,上界是最大独立集。
证明比较迷。
CF1685E The Ultimate LIS Problem
最小链长度等于最小反链覆盖,相当于不超过 \(n\) 的下降子序列覆盖。
那么一个子序列长度为 \(2\) 即可,容易想到把 \(>n+1\) 的看作左括号,\(<n+1\) 的看作右括号,一个匹配就是一次覆盖。
如果 \(n+1\) 被塞在了一对括号内,那我们就做完了,否则考虑先把 \(n+1\) 转到末尾去。
通过 pb 神秘思维发现 \([1,n],[n+2,2n+1]\) 都是升序的话就是无解,否则可以调整出解。
剩下的就是神秘数据结构了。
独立集问题
门票安排
二分答案,破环为链。
先假定都直接走,也即每个区间都加一。
操作是选个区间,给它减一,外部加一。也即全局加一,内部减二。
直接贪心不太有前途,考虑减少一点操作量。
第一个性质是考虑两个不交的区间,如果都翻了,那什么也没减,还有三段加二,你就亏麻了。
第二个性质是考虑两个相交的区间,如果都翻了,会使得其交的内部减二,而其并的外部加二。
啊我掉了。

浙公网安备 33010602011771号