VP 的,但怎么 ABC 都是贪心 /kel
赛时 1.5h 过了 ABC,剩 1h 摆烂 / 写题解。
A. Mex in the Grid
不是,我随便搞搞然后就不知道为啥就过了?
就维护一个当且的子矩形,能在里面填就填,否则扩展短的那边。
然后这样会 WA on test 2,你每次扩展能扩充的位置最多的那边,然后就过了,我也不知道为啥。
B. Quartet Swapping
容易看出来可以奇偶分开做,但不完全,它们还是会有一些影响的。
一个显然的贪心思路是每次选最小的然后挪到前面,然后最后会剩 \(3\) 个数动不了,不管它,这样一定是最优的。
可以直接模拟,用链表 + set,但是这样不够好。
考虑更智慧的做法,直观的想法是奇数位和偶数位分开排序,但这样不完全对,因为最后会剩 \(3\) 个数动不了。事实上,容易看出只有 \(a_{n-2}\) 和 \(a_n\) 这两个数需要处理。
邻项交换这类问题可以从逆序对数量入手考虑,你发现每次交换会让奇数位和偶数位的逆序对数量发生恰好 \(1\) 的变化,所以你可以通过逆序对数量的奇偶性来确定 \(a_{n - 2}\) 和 \(a_n\)。
感觉两种做法实现都不难,不过第二种做法实现更简洁一些。
C. 23 Kingdom
维护前后缀贡献,随便贪心就行。
D. Mani and Segments
发现最多有一个数既在 LIS 也在 LDS,于是枚举这个数,然后用脚维护。
我赛时发现了这个性质,但不是这么想的,冷静下来后才发现了这个思路。
然后用脚维护的细节还没想明白,等会再说。