溢出求条
查看原帖
溢出求条
977139
fanyixuan1010楼主2024/9/7 15:56

50Pts

会输出负数,请问哪溢了???

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll N=1e6+5,mod=1e9+7;
ll a[N],s[N],t[N],p[N];
int main(){
	ios::sync_with_stdio(0);
	cin.tie(0),cout.tie(0);
	int n;
	cin>>n;
	for(int i=1;i<=n;i++){cin>>a[i];s[i]=(s[i-1]+a[i])%mod;}
	for(int i=1;i<=n;i++)t[i]=(((s[n]-s[i])*a[i])%mod+t[i-1])%mod;
	for(int i=1;i<=n;i++)p[i]=(((t[n]-t[i])*a[i])%mod+p[i-1])%mod;
	cout<<(6ll*p[n])%mod<<"\n";
	return 0;
}
2024/9/7 15:56
加载中...