#summercspj263C. 共鸣实验

共鸣实验

【题目描述】

牛顿的实验台上摆着 nn 支音叉,第 ii 支音叉的振动频率为 aia_i.任意两支音叉同时振动时,频率相差越大,实验装置记录到的差异能量就越高.

实验装置会让每一对不同的音叉恰好同时振动一次.对于编号满足 1i<jn1\le i<j\le n 的一对音叉,装置记录的差异能量定义为 aiaj2|a_i-a_j|^2

请计算全部实验产生的差异能量之和,也就是

1i<jnaiaj2\sum_{1\le i<j\le n}|a_i-a_j|^2

109+710^9+7 取模后的结果.

输入格式

第一行输入一个整数 nn,表示音叉数量.

第二行输入 nn 个整数 a1,a2,,ana_1,a_2,\ldots,a_n,其中 aia_i 表示第 ii 支音叉的振动频率.

输出格式

输出一个整数,表示所有差异能量之和对 109+710^9+7 取模后的值.

样例 1

输入

4
1 2 4 7

输出

84

解释

六对音叉产生的差异能量依次为

1,9,36,4,25,9,1,9,36,4,25,9,

它们的总和为 8484

样例 2

输入

2
0 1000000000

输出

49

解释

两支音叉产生的差异能量为 101810^{18},它对 109+710^9+7 取模后的结果为 4949

样例 3

见选手目录下的 Data/sample3.inData/sample3.ans

该样例对应子任务 11,满足 n200n\le200

样例 4

见选手目录下的 Data/sample4.inData/sample4.ans

该样例对应子任务 22,满足 n5000n\le5000

样例 5

见选手目录下的 Data/sample5.inData/sample5.ans

该样例对应子任务 33,满足 ai{0,1}a_i\in\{0,1\}

样例 6

见选手目录下的 Data/sample6.inData/sample6.ans

该样例对应子任务 44,满足 0ai10000\le a_i\le1000

样例 7

见选手目录下的 Data/sample7.inData/sample7.ans

该样例对应子任务 55,无特殊性质.

数据范围与约定

对于所有测试数据,保证:

  • 1n1061\le n\le10^6
  • 0ai1090\le a_i\le10^9
子任务编号 分数 特殊性质
11 1010 n200n\le200
22 2020 n5000n\le5000
33 1515 ai{0,1}a_i\in\{0,1\}
44 0ai10000\le a_i\le1000
55 4040 无特殊性质

【大样例下载链接】

点击下载本题选手目录