{"raw_statement":[{"iden":"problem statement","content":"For a finite set of integers $X$, let $f(X)=\\max X - \\min X$.\nGiven are $N$ integers $A_1,...,A_N$.\nWe will choose $K$ of them and let $S$ be the set of the integers chosen. If we distinguish elements with different indices even when their values are the same, there are ${}_N C_K$ ways to make this choice. Find the sum of $f(S)$ over all those ways.\nSince the answer can be enormous, print it $\\bmod (10^9+7)$."},{"iden":"constraints","content":"*   $1 \\leq N \\leq 10^5$\n*   $1 \\leq K \\leq N$\n*   $|A_i| \\leq 10^9$"},{"iden":"input","content":"Input is given from Standard Input in the following format:\n\n$N$ $K$\n$A_1$ $...$ $A_N$"},{"iden":"sample input 1","content":"4 2\n1 1 3 4"},{"iden":"sample output 1","content":"11\n\nThere are six ways to choose $S$: ${1,1},{1,3},{1,4},{1,3},{1,4}, {3,4}$ (we distinguish the two $1$s). The value of $f(S)$ for these choices are $0,2,3,2,3,1$, respectively, for the total of $11$."},{"iden":"sample input 2","content":"6 3\n10 10 10 -10 -10 -10"},{"iden":"sample output 2","content":"360\n\nThere are $20$ ways to choose $S$. In $18$ of them, $f(S)=20$, and in $2$ of them, $f(S)=0$."},{"iden":"sample input 3","content":"3 1\n1 1 1"},{"iden":"sample output 3","content":"0"},{"iden":"sample input 4","content":"10 6\n1000000000 1000000000 1000000000 1000000000 1000000000 0 0 0 0 0"},{"iden":"sample output 4","content":"999998537\n\nPrint the sum $\\bmod (10^9+7)$."}],"translated_statement":null,"sample_group":[],"show_order":["default"],"formal_statement":null,"simple_statement":null,"has_page_source":true}