题目描述 Description
求a1a2+a1a3+a1a4+…+a1an+a2a3+a2a4+…+a2an+a3a4+…+a3an+…+an-2an-1+an-2an+an-1an的值。
标签:
#include<cstdio> int main() { int n,a[100000],i,j; long long sum=0; scanf("%d",&n); for(i=1;i<=n;i++) { scanf("%d",&a[i]); sum+=a[i]; } long long sum1=0,sum2=0,ans=0; for(i=1;i<=n;i++) { sum1+=a[i]; sum2=sum-sum1; ans+=a[i]*sum2; } printf("%I64d",ans); }
把O(N*N)的复杂度变为O(N)
标签:
原文地址:http://www.cnblogs.com/liuxinyu/p/5076897.html