70pts求调
查看原帖
70pts求调
749175
114514xxx楼主2024/9/21 11:26

WA on #8 9 10

#include<bits/stdc++.h>
#define int unsigned long long
using namespace std;
const int N=6e5+25;
const int MOD=1e9+7;
int a[N],b[N],asum[N],bsum[N];
int f(int l,int r){
    int ans=0;
    for(int i=l;i<=r;i++)
        ans+=asum[i]*bsum[i],ans%=MOD;
    return ans%MOD;
}
int k(int l,int r){
    int ans1=0,ans2=0;
    for(int i=l;i<=r;i++)
        ans1+=asum[i],ans1%=MOD;
    for(int i=l;i<=r;i++)
        ans2+=bsum[i],ans2%=MOD;
    return (ans1*ans2)%MOD;
}
signed main(){
    std::ios::sync_with_stdio(0);
    int n;
    cin>>n;
    for(int i=1;i<=n;i++)
        cin>>a[i],asum[i]=asum[i-1]+a[i];
    for(int i=1;i<=n;i++)
        cin>>b[i],bsum[i]=bsum[i-1]+b[i];
    int x1=n+1;
    int x2=f(1,n)%MOD;
    int x3=k(1,n)%MOD;
    cout<<(x1*x2-x3)%MOD;
}

2024/9/21 11:26
加载中...