20261026 - 贪了,再贪一波 总结
前言
哎可惜了这波贪了。
这波真的区完了。线段树仙人再展神力!
我就这么一直区下去。
几乎所有的题都是前 1h 做的,感觉实力完全区了啊 /ll

我就是这个会蠕动的绿色区区。
因为题数量不少,我会大致带过一下,不会很详细 w。
A - Secret Santa
至今无法理解这题为什么放在 A。
首先观察出答案为互不相同的数字个数,然后考察如何构造,先随便填个值,然后对于相等的 \(a_i\),如果 \(b_i = i\) 就交换一下,总能匹配出正确的答案。
B - Potions (Hard Version)
原题,反悔贪心,随便用堆搞搞就行了。
C - Increasing Subsequence (hard version)
非常简单题。枚举左边选多少个,可以根据数字不能相同(题目要求严格递增)的信息算出右边最多能选多少个,和取 \(\max\) 就是答案。
D - Vouchers
很简单的反贪,堆维护最小的 \(d\) 每次换着来就行了。
E - Packing Under Range Regulations
难一些的贪心,有动态开点线段树过的,还是太 dsa 了。
考察先按照左端点排序贪心,解锁左端点后按右端点(当前自由度)排序处理优先级,用堆维护。
F - Salary Changing
简单二分题,显然有单调性,只要有 \(\lceil \frac{n}{2} \rceil\) 个 \(\ge mid\) 的就行。可以直接贪,如果区间本来就在之上或之下就贪心选 \(l\),否则让 \(l\) 较大的那些作为 \(mid\),其他选 \(l\)。时间复杂度有两只老哥。
G - Odd-Even Subsequence
奇数位置和偶数位置分开讨论,用二分求答案,check 函数里面随便贪。注意范围,注意分 \(k\) 的奇偶性讨论。还是需要一些观察的吧。
H - Keep the Average High
首先让 \(a_i \gets a_i - x\),那么限制就转化为 \(\ge 0\)。根据裴蜀定理可以分成 \(2\) 和 \(3\) 长度的段,直接判,如果 \(a_i + a_{i-1} < 0\) 或 \(a_i + a_{i-1} + a_{i-2} < 0\) 就显然不会选 \(a_i\) 这个数了,为了后面处理方便。如果不选 \(a_i\) 就把 \(a_i\) 设成 \(\inf\) 就行了。
总结
好难好难……好难好难……
我真要成大区了。E 都做不出来(指责,G 都做不出来(指责,H 都做不出来(指责,A 还做那么久(指责。我真是一个大区!!!
为什么 plc 这么喜欢线段树 /yun 我觉得啊,能不写数据结构就不写吧(。

我就这么区下去。
csp rp ++

浙公网安备 33010602011771号