#HM067. 平方的和

平方的和

题目描述

黑猫老师在讲台上出了一道看似简单但暗藏玄机的题目:“大橘同学,如果我给你 n 个数字 a1,a2,,ana_1, a_2, \cdots, a_n,你能不能算出这些数字两两相加后的平方和?”

大橘同学揉了揉脑袋,想了想,黑猫老师补充道:“也就是说,你要计算的是:

1i<jn(ai+aj)2\sum_{1 \le i < j \le n} (a_i + a_j)^2这个值可能会非常大,所以请你只输出它模 1, ⁣000, ⁣000, ⁣007 的结果就行了!”

于是,大橘同学开始奋笔疾算……


输入格式

  • 第一行:一个整数 n
  • 第二行:n 个整数 a1,a2,,ana_1, a_2, \cdots, a_n

输出格式

  • 一个整数:表示结果模 1, ⁣000, ⁣000, ⁣007 的余数。
3
1 2 3
50

数据范围

  • 30% 的数据,1n1000ai<1001 \le n \le 100, 0 \le a_i < 100
  • 60% 的数据,1n100000ai<100001 \le n \le 10000, 0 \le a_i < 10000
  • 100% 的数据,1n1, ⁣000, ⁣0000ai<1, ⁣000, ⁣0001 \le n \le 1,\!000,\!000, 0 \le a_i < 1,\!000,\!000

说明:

(1+2)2+(1+3)2+(2+3)2=32+42+52=9+16+25=50(1+2)^2 + (1+3)^2 + (2+3)^2 = 3^2 + 4^2 + 5^2 = 9 + 16 + 25 = 50

Statistics

Related

In following contests:

仲盛周六 13:00 班级 day25_4_11