CF2102 题解
A. Dinner Time
注意到 \(n\) 不是 \(p\) 的倍数时一定有解。否则和就是固定的,直接判一下即可。
B. The Picky Cat
直接对于是否取反 \(a_1\) 进行分类讨论。每种情况下暴力把取反能造成贡献的取反,然后判断 \(a_1\) 是否能成为中位数即可。
C. Mex in the Grid
注意到直接蛇形填充就是对的,
D. Quartet Swapping
首先观察几个性质:
-
奇数位置上的数不可能跑到偶数位置上,反之亦然。
-
逆序对的奇偶性不会因操作而变化。
显然我们将奇数位置和偶数位置上的数分别排序是最优的答案。但是可能不满足性质 \(2\)。如果不满足我们直接交换 \(a_{n-2}\) 与 \(a_n\) 即可。
E. 23 Kingdom
考虑拆贡献。我们记一个数第一次出现为 \(L\),最后一次出现为 \(R\)。现在一个位置 \(p\) 贡献的次数就是左边的 \(L\) 数量和右边的 \(R\) 数量的较小值。
不难发现一定有一种构造方式能达到这个上界,于是我们只需做一个最大化 \(L,R\) 数量的问题。于是我们只需对每个位置填未出现的最大值,然后求填了多少数。这个东西用二分和数据结构是容易做到 \(2\log\) 的。
F. Mani and Segments
考虑转化这个条件:相当于 LIS 和 LDS 的并集是整个区间,交集在一个点上。
我们可以在这个点时计算这个区间的贡献。
然后就注意到这个点左右数的一些要求,现在问题是怎么找到最远的左右端点。考虑直接使用单调栈维护 LIS 和 LDS,然后正反找一遍就行。
最后贡献是矩形面积并,但是因为这里的矩形的良好性质,不需要扫描线就可以直接算。

浙公网安备 33010602011771号