#JDT5B. 导弹期望之值

导弹期望之值

题目描述

n n 个标靶排成一行,第 i i 个标靶的高度为 ai a_i

炮弹从左侧以等概率随机高度 h h 1hm 1 \leq h \leq m )发射,水平向右移动。当炮弹遇到第一个未被摧毁的标靶且 h h \leq 该标靶高度时,炮弹和标靶同时被摧毁。重复发射炮弹,直到所有标靶被摧毁。

目标是调整标靶的排列顺序,使得摧毁所有标靶的期望发射次数 E E 最大。输出 Emaxmod(109+7) E_{\text{max}} \mod (10^9 + 7)

输入格式

第一行包含两个正整数 n n m m ,表示标靶数和最大炮弹高度。

第二行包含 n n 个整数 a1,a2,...,an a_1,a_2,..., a_n ,表示标靶高度。

输出格式

一行一个整数,表示期望的最大值 Emaxmod(109+7) E_{\text{max}} \mod (10^9 + 7)

2 2
1000 1
3

数据范围

1n106 1 \leq n \leq 10^6 1m109 1 \leq m \leq 10^9 1ai109 1 \leq a_i \leq 10^9