唐氏结论题

link

题意:对于一个 \(n+1\) 个点的完全图和长度为 \(n\) 的序列 \(a\) ,点 \(u\)\(v\) 之间的边权为 \(\max(a_u, a_{u+1}...a_{v-1})\) ,定义权值为图的最大权完美匹配。给定 \(a\) ,求 \(a\) 所有排列的权值和。

数据:\(n \le 10^5\)

不是图论题喵。

有一个结论:最终的匹配形如 \((i,\frac{n+1}{2}+i)\)

证明:反证法。

  1. 不存在两个区间不交的情况,否则交换更优
  2. 不存在两个区间包含的情况,否则交换更优

所以反正如此匹配。

然后就糖丸了,直接拆贡献计算即可。

\(len=\frac{n+1}{2}\)

考虑一个数对一个区间的贡献,每个区间长度为 \(len\) ,所以有 \(len\) 种位置可以选择。同时有 \(len\) 个区间,它们都是等价的。再考虑剩下的数,比当前数大的要放在区间外面,其它的可以乱排。

所以 \(ans=\sum{a_ib_i}\)

其中 \(b_i=len^2\binom{n-len}{i-1}(i-1)!(n-i)!\)

复杂度 \(O(n \log n)\) ,瓶颈在于排序。

某些唐氏觉得要 \(n^2\) 计算还写错,我不说是谁。

posted @ 2024-11-21 21:49  lowbit  阅读(55)  评论(0)    收藏  举报