题目要我们求得答案为
我们令
由于 矩阵的对称性知
#include<cstdio> #include<iostream> using namespace std; typedef long long ll; const int mod =1e9+7; ll a[500005]; int main(){ int n; scanf("%d",&n); ll sum1=0,sum2=0; for(int i=1;i<=n;++i){ scanf("%d",&a[i]); sum1=(sum1+a[i]*a[i])%mod; sum2=(sum2+a[i])%mod; } ll ans=((n*sum1-sum2*sum2)%mod+mod)%mod; cout<<ans<<endl; return 0; }