#P5059. 生日派对
生日派对
题目背景
小A接到了一份生日派对的蛋糕订单,需要制作一座多层蛋糕塔,每层蛋糕对应不同的味道。为了设计特别的装饰方案,小A需要计算所有层蛋糕上糖霜小球的一个特殊总和——即每两层蛋糕的糖霜小球数量两两相乘后,将所有乘积累加得到的结果。
题目描述
已知蛋糕塔共有 n 层,第 i 层蛋糕上的糖霜小球数量为 a_i(1 ≤ i ≤ n)。要求计算所有满足 1 ≤ i < j ≤ n 的整数对 (i,j) 对应的 a_i × a_j 之和,记为 s。
例如,若层数为4且小球数量分别为2、4、6、8,则总和 s = 2×4 + 2×6 + 2×8 + 4×6 + 4×8 + 6×8。
输入格式
- 第一行包含一个整数 n,表示蛋糕塔的层数。
- 第二行包含 n 个整数,用空格分隔,依次表示每一层蛋糕上的糖霜小球数量 a₁, a₂, …, aₙ。
输出格式
输出一个整数 s,表示所有两两相乘后累加的总和。
样例输入
4
2 4 6 8
样例输出
140
样例解释
根据样例输入的小球数量 [2, 4, 6, 8],计算过程如下:
- 2与后续层的乘积:2×4=8,2×6=12,2×8=16
- 4与后续层的乘积:4×6=24,4×8=32
- 6与后续层的乘积:6×8=48
- 总和:8 + 12 + 16 + 24 + 32 + 48 = 140
数据规模与约定
| 数据范围 | n 的范围 | a_i 的范围 |
|---|---|---|
| 30% 数据 | 1 ≤ n ≤ 1000 | 1 ≤ a_i ≤ 100 |
| 100% 数据 | 1 ≤ n ≤ 200000 | 1 ≤ a_i ≤ 1000 |