This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <stdio.h>
#define d 1000000007
long long arr[100001];
int main()
{
int n,i;
long long sum1=0,sum2=0,sum3=0,vol;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&arr[i]);
sum1+=arr[i];
sum1%=d;
sum2+=arr[i]*arr[i];
sum2%=d;
sum3+=((arr[i]*arr[i])%d)*arr[i];
sum3%=d;
}
vol=((((sum1*sum1)%d)*sum1)%d-sum3)%d;
for(i=0;i<n;i++)
{
vol-=(3*((arr[i]*arr[i])%d)*(sum1-arr[i]))%d;
vol+=d;
vol%=d;
}
while(vol%6!=0)
vol+=d;
vol/=6;
printf("%lld",vol%d);
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |