题目背景
译自 Izborne Pripreme 2020 (Croatian IOI/CEOI Team Selection) D2T3。1s,0.5G。
题目描述
给定 K 个 1∼N 的排列 π1,π2,⋯,πK。
求出排列群 G(S,∘) 中的排列的逆序对期望值。其中二元运算 ∘ 为置换,∀1≤i≤K,都有 πi∈S。
具体地说,我们定义 (π∘τ)(i)=π(τ(i))。
群 G(S,∘) 是满足如下性质的代数结构:
- 封闭性:∀a,b∈S,都有 a∘b∈S;
- 结合律:∀a,b,c∈S,都有 (a∘b)∘c=a∘(b∘c);
- 幺元:存在 e∈S,对于 ∀a∈S,都有 a∘e=e∘a=a;
- 逆元:∀a∈S,存在 b∈S,使得 a∘b=b∘a=e。
定义 L(π) 为 π 的逆序对数,即 $\displaystyle \mathcal{L}(\pi)=\sum_{1\le i\lt j\le n}[\pi(i)\gt \pi(j)]$,求出 $\displaystyle \frac{1}{|S|}\sum_{\pi \in S} \mathcal{L}(\pi)$。
答案对 (109+7) 取模。
输入格式
第一行,两个正整数 K,N。
接下来 K 行,第 i 行 N 个正整数描述 πi。
输出格式
输出一行一个整数,即答案对 (109+7) 取模后的结果。
1 3
2 3 1
333333337
2 5
4 2 1 3 5
2 5 4 3 1
5
1 9
3 4 5 6 7 8 1 9 2
300000017
提示
样例解释
- 样例 1 解释:S={[2,3,1],[3,1,2],[1,2,3]}。逆序对期望值为 31+2+0=34。
- 样例 2 解释:可以证明 ∣S∣=5!,即 S 中包含了 1∼5 的所有排列。
- 样例 3 解释:此时 ∣S∣=20,答案真实值为 10149。
数据范围
对于 100% 的数据,保证:
- 1≤K≤10;
- 1≤N≤2500;
- πi 是 1∼N 的排列。
子任务编号 |
N≤ |
K≤ |
特殊性质 |
得分 |
1 |
9 |
10 |
无 |
7 |
2 |
2500 |
1 |
有 |
8 |
3 |
2500 |
无 |
25 |
4 |
10 |
60 |
特殊性质:∀1≤i≤K,存在 1∼N 的排列 a,使得 $\pi_i(a_1)=a_2,\pi_{i}(a_2)=a_3,\cdots,\pi_i(a_n)=a_1$。