比赛 2026.8.28 评测结果 AAAAATTTTT
题目名称 无法拒绝孤独的她 最终得分 50
用户昵称 ChenBp 运行时间 11.328 s
代码语言 C++ 内存使用 15.70 MiB
提交时间 2026-08-28 12:42:53
显示代码纯文本
#include<iostream> 
#include<cstdio>
using namespace std;
using ll=long long;
const int N=5e5+5;
ll a[N],b[N],c[N];
struct ques{
    ll p,x,y,z;
}qu[N];
int main(){
    freopen("cantrefuse.in","r",stdin);
    freopen("cantrefuse.out","w",stdout);
    ios::sync_with_stdio(0);
    cin.tie(0), cout.tie(0);
    int n,q;
    cin>>n>>q;
    bool t1=1,t2=1,t3=1;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        if(a[i]) t1=0;
    }
    for(int i=1;i<=n;i++){
        cin>>b[i];
        if(b[i]) t2=0;
    }
    for(int i=1;i<=n-1;i++){
        cin>>c[i];
        if(c[i]) t3=0;
    }
    for(int i=1;i<=q;i++){
        cin>>qu[i].p>>qu[i].x>>qu[i].y>>qu[i].z;
        if(qu[i].x) t1=0;
        if(qu[i].y) t2=0;
        if(qu[i].z) t3=0;
    }
    if(t1||t2){
        for(int i=1;i<=q;i++) cout<<"0\n";
        return 0;
    }
    if(t3){
        ll sum=0;
        for(int i=1;i<=n;i++){
            sum+=min(a[i],b[i]);
        }
        for(int i=1;i<=q;i++){
            int p=qu[i].p;
            sum-=min(a[p],b[p]);
            a[p]=qu[i].x;
            b[p]=qu[i].y;
            c[p]=qu[i].z;
            sum+=min(a[p],b[p]);
            cout<<sum<<"\n";
        }
        return 0;
    }
    for(int i=1;i<=q;i++){
        int p=qu[i].p;
        a[p]=qu[i].x;
        b[p]=qu[i].y;
        c[p]=qu[i].z;
        ll sum=0,ans=0;
        for(int j=1;j<=n;j++){
            sum+=a[j];
            ans+=min(sum,b[j]);
            sum-=min(sum,b[j]);
            sum=min(sum,c[j]);
        }
        cout<<ans<<"\n";
    }
    return 0;
}