题目描述
给定n个整数a1,a2,⋯,an,需要计算所有满足1≤i<j≤n的(ai+aj)2的和,即∑1≤i<j≤n(ai+aj)2 。由于计算结果可能非常大,最终输出答案对1,000,000,007取模的余数。
输入格式
- 第一行:一个整数n,表示整数的个数。
- 第二行:n个整数a1,a2,⋯,an,以空格分隔。
输出格式
一个整数,为计算得到的和对1,000,000,007取模后的余数。
数据范围
- 30%的数据:1≤n≤100,0≤ai<100
- 60%的数据:1≤n≤10000,0≤ai<10000
- 100%的数据:1≤n≤1,000,000,0≤ai<1,000,000
样例数据
3
1 2 3
50
- 说明:计算过程为3×3+4×4+5×5 ,其中3=1+2,4=1+3,5=2+3 。
∑1≤i<j≤n(ai+aj)2 。根据完全平方公式 (a+b)2=a2+2ab+b2,可将原式展开为:
∑1≤i<j≤n(ai2+2aiaj+aj2)