F. 樱子的盒子
每个测试的时间限制:2 秒
内存限制:256 兆字节
题目描述
樱子有一个盒子,里面装有 n 个球。每个球都有一个数值。她想和朋友打赌:如果朋友从盒子中随机抽取两个球(两个球必须不同,但它们的数值可能相同),那么这两个球的数值的乘积将等于樱子猜的数。
由于樱子拥有概率学博士学位,她知道最好的猜数是期望值,但她忘记了如何计算。请帮助樱子,求出从数组中任意选取两个元素的乘积的期望值。
可以证明期望值可以表示为 QP 的形式,其中 P 和 Q 是非负整数,且 Q=0。请输出 P⋅Q−1(mod109+7) 的值。
输入格式
第一行包含一个整数 t(1≤t≤104)—— 测试用例的数量。
每个测试用例的第一行包含一个整数 n(2≤n≤2×105)—— 数组中元素的数量。
每个测试用例的第二行包含 n 个整数 a1,a2,…,an(0≤ai≤109)—— 数组的元素。
保证所有测试用例的 n 之和不超过 2×105。
输出格式
对于每个测试用例,输出 P⋅Q−1(mod109+7) 的值。
输入样例
3
3
3 2 3
4
2 2 2 4
5
1 2 3 4 5
输出样例
7
6
500000012
样例解释
第一个测试用例:樱子的朋友可以选择以下球对:(a1,a2)、(a1,a3)、(a2,a3)。它们的乘积分别为 3×2=6、3×3=9、3×2=6,因此期望值为 36+9+6=7。
第二个测试用例:樱子的朋友可以选择以下球对:(a1,a2)、(a1,a3)、(a1,a4)、(a2,a3)、(a2,a4)、(a3,a4)。它们的乘积分别为 2×2=4、2×2=4、2×4=8、2×2=4、2×4=8、2×4=8,因此期望值为 64+4+8+4+8+8=636=6。