蓝桥杯 | 求和 问题 | python
运行限制
最大运行时间:1s
最大运行内存: 512M
- 官方题解
import os
import sys
# 请在此输入您的代码
n=eval(input())
a=list(map(int,input().split()))
ans=0
b=sum(a) # b初始值为bn
for i in range(n-1):
b-=a[i] # 相当于bn-bi
ans+=a[i]*b # 套用优化后的公式
print(ans)
- 其他题解
原式 = (和的平方 - 平方的和) * 0.5
import os
import sys
# 请在此输入您的代码
n=eval(input())
a=list(map(int,input().split()))
# 原式=(和的平方-平方的和)*0.5
s=sum(a)**2 # 和的平方
for i in a: # 减平方的和
s-=i*i
print(s//2)