题目大意:有一个长为 n 的排列,有一部分数字丢失了,问你逆序对数的期望是多少。
题解:
答案的贡献分成三部分:
未知部分相当于一个随机排列,设未知数字的个数为cnt,则未知数字之间的贡献为:ans=4cnt∗(cnt−1)
已知数字和已知数字之间的贡献:经典树状数组nlogn做法可以求得
未知数字和已知数字之间的贡献:对于一个已知数字 x,设它左边有 leftx个未知数字,比他大的未知数字有 gx个,则它的贡献为:cntleftx∗gx
理由:单独考虑每一个比 x 大的数字的贡献:设 y>x,y 有 cntleftx的概率位于 x 的左边,与 x 形成一对逆序对,因此 y 对 x 的贡献为 1∗cntleftx,接着考虑所有比 x 大的未知数字,根据线性期望的性质,得到上式。