编程题
### 问题描述 从前有一个以数字和算法为主题的王国,国王想为自己美丽的公主挑选一位聪明的驸马,于是出了一道问题。 对于一组数字集合的价值为它的 **最大值减去最小值** ,国王将会给定一个长度为 $n$ 的数组 $a$ ,公主将会给出一个整数 $k$ , 在数组 $n$ 中任意选择 $k$ 个数的可能集合,请你计算出这所有可能的集合的总和,注意只要选取的数下标不完全相同,则视 为不同集合。当然这个答案可能非常巨大,因此国王要求答案对 $10^9+7$ 取模。你非常仰慕美丽的公主,于是你决定尝试 解决该问题。 ### 输入格式 第一行输入两个整数表示 $n$ 和 $k$ 。 第二行输入 $n$ 个整数 $a_1,a_2,......,a_n$ 表示数组的值。 数据保证 $1 \leq n \leq 1 \times10^5$,$1 \leq k \leq n$,$10^{-9} \leq a_i \leq 10^9$。 ### 输出格式 输出一个整数表示答案,注意需要对 $10^9+7$ 取模 ### 样例输入 ``` 4 2 1 3 7 10 ``` ### 样例输出 ``` 31 ``` ### 说明 对于样例我们可能选择的集合有 $\{1,3\},\{1,7\},\{1,10\},\{3,7\},\{3,10\},\{7,10\}$,价值总和为 $31$ 。
查看答案
赣ICP备20007335号-2