专栏文章
题解:P14321 「ALFR Round 11」D Adjacent Lifting, Fewest Rounds
P14321题解参与者 5已保存评论 4
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 4 条
- 当前快照
- 1 份
- 快照标识符
- @minhnhn4
- 此快照首次捕获于
- 2025/12/02 02:34 3 个月前
- 此快照最后确认于
- 2025/12/02 02:34 3 个月前
首先考虑对于一个给定排列 的最优策略:
- 我们有以下观察:
- 注意到第一种操作不限次数,可以让某个数在奇偶性不变的情况下成为与之奇偶性相同的任何数,那么我们可以把原来排列中奇数看成 ,偶数看成 ,这样方便我们操作。
- 对于二操作,如果是对于一个 之间的操作,那么等价于交换这两个数,否则等价于两个数取反,由于交换两个数并不会影响 的数量,而且取反总会让两个取反,而排列的长度是奇数,所以一定是有偶数个元素的数最后取反若干次,最后全部成为之前有奇数个元素的数。
- 而对于需要取反的数,我们自然想到一个贪心的解法就是从前往后两两匹配,每一组的代价就是这两个位置之间另一个元素的出现次数,当前别忘记最后加上取反的次数,也就是偶数个元素出现个数的一半。
那么我们就可以枚举两两匹配时中间不同的元素的总个数,称为 ,再设 表示需要最后两两匹配的元素个数, 为最后不两两匹配的元素个数,显然一个元素要么是匹配的要么不匹配,所以 。
那么对于我们确定了最后的代价 后,我们需要把这 个数插入到任意某个组的两个位置中间,由于一共有 组,所以相当于求方程:
解的数量,根据插板法,这个式子可以化简为:
而对于除去这 个数后的另外 个数,它们要插入到这 个组的 个空隙中,这个还是求方程的解的问题,可以化简为:
所以答案就是对于每个 求和再乘上阶乘再加上每种情况都有的贡献:
此时期望得分为 分。
在这里,由于带着 不是很好看,我们用 ,由于固定的贡献是好 计算的,所以我们暂且只考虑后面带 的式子如何化简。
首先替换变量后原式得:
把组合数的第一个展开成阶乘的形式得到:
所以:
\binom{i - 1 + k}{k - 1} \cdot i &= \frac{(i - 1 + k) ! }{(k - 1) ! \cdot i!} \cdot i \\
&= \frac{(i - 1 + k)!}{(k - 1)!\cdot (i - 1)!} \\
&= \frac{(i - 1 + k)! \cdot k}{k! \cdot (i - 1)!} \\
&= k \cdot \binom{i - 1 + k}{k}
\end{align*}$$
所以原式得:
$$\sum_{i = 0} ^ q k\cdot \binom{i - 1 + k}{k} \cdot \binom{q - i + k}{k}$$
由于:
$$\sum_{i} \binom{p - i}{x} \cdot \binom{q + i}{y} = \binom{p + q + 1}{x + y + 1}$$
所以我们把:
$$k - 1 \rightarrow q,q + k \rightarrow p$$
则原式得:
$$k\cdot \binom{k - 1 + q + k + 1}{2k + 1} = k\cdot \binom{2k + q}{2k + 1} = k\cdot \binom{p + q}{p + 1} = k\cdot \binom{n}{p + 1}$$
所以答案就是:
$$k\cdot \binom{n}{p + 1} + n! \cdot k$$
时间复杂度容易做到 $\mathcal O(V + T)$。
~~代码是个人都会写~~,不给了。相关推荐
评论
共 4 条评论,欢迎与作者交流。
正在加载评论...