#1748. 差值

差值

题目描述

我们定义一个数组的价值是这个数组的所有数字两两组合的差值之和。例如 [1,2,3,4],数字两两组合共有六组:[1,2],[1,3],[1,4],[2,3],[2,4],[3,4]。差值分别是 1、2、3、1、2、1,差值之和为 10,所以数组 [1,2,3,4] 的价值为 10。

nn 个数字,小核桃从中选了 kk 个数字组成了一个新的数组。

小核桃有很多种选择数字的方法,求所有方法生成的新数组的价值之和。由于答案可能很大,你只需要输出答案对 109+710^9+7 取模之后的结果就可以啦~

输入格式

第一行输入两个正整数 n,kn,k,表示数字的个数和每次选择的数字个数。

接下来一行包含 nn 个正整数,其中第 ii 个数字记为 aia_i

输出格式

输出一行一个正整数表示答案。

4 2
1 2 3 4
10
4 3
1 2 3 4
20

测试点说明

测试点编号 nn \leq 特殊性质
1-2 10 实际答案小于 109+710^9+7,即无需取模
3-4
5-6 200
7-8 2000
9-10 200000

对于所有的测试点,有 1kn2105,1ai1061 \leq k \leq n \leq 2*10^5, 1 \leq a_i \leq 10^6

大样例

T1sample