#ABC151E. Max-Min Sums

Max-Min Sums

题目描述

For a finite set of integers XX, let f(X)=maxXminXf(X)=\max X - \min X.

Given are NN integers A1,...,ANA_1,...,A_N.

We will choose KK of them and let SS be the set of the integers chosen. If we distinguish elements with different indices even when their values are the same, there are NCK{}_N C_K ways to make this choice. Find the sum of f(S)f(S) over all those ways.

Since the answer can be enormous, print it  mod(109+7)\bmod (10^9+7).

对于有限整数集 XX ,让 f(X)=maxXminXf(X)=\max X - \min X .

给出 NN 个整数 A1,...,ANA_1,...,A_N .

我们将选择其中的 KK ,并让 SS 成为所选整数的集合。如果我们区分不同指数的元素,即使它们的值相同,也有 NCK{}_N C_K 种方法进行选择。求所有这些方法的总和 f(S)f(S)

由于答案可能很大,请打印出 mod(109+7)\bmod (10^9+7)

输入格式

输入内容按以下格式标准输入:

NN KK
A1A_1 ...... ANA_N

输出格式

打印答案 mod(109+7)\bmod (10^9+7)

样例 #1

样例输入 #1

4 2
1 1 3 4

样例输出 #1

11

样例 #2

样例输入 #2

6 3
10 10 10 -10 -10 -10

样例输出 #2

360

样例 #3

样例输入 #3

3 1
1 1 1

样例输出 #3

0

样例 #4

样例输入 #4

10 6
1000000000 1000000000 1000000000 1000000000 1000000000 0 0 0 0 0

样例输出 #4

999998537

说明

数据规模与约定

  • 1N1051 \leq N \leq 10^5
  • 1KN1 \leq K \leq N
  • Ai109|A_i| \leq 10^9

样例 11 解释

选择 SS 的方法有六种: {1,1},{1,3},{1,4},{1,3},{1,4},{3,4}\{1,1\},\{1,3\},\{1,4\},\{1,3\},\{1,4\}, \{3,4\} (我们将两个 11 区分开来)。这些选择的 f(S)f(S) 值分别为 0,2,3,2,3,10,2,3,2,3,1 ,合计为 1111

样例 22 解释

2020 种方法可以选择 SS 。在其中的 1818 中,有 f(S)=20f(S)=20 ;在其中的 22 中,有 f(S)=0f(S)=0

样例 44 解释

打印总和 mod(109+7)\bmod (10^9+7)