比赛 2026.8.28 评测结果 AAAAATTTTT
题目名称 无法拒绝孤独的她 最终得分 50
用户昵称 dream 运行时间 11.273 s
代码语言 C++ 内存使用 14.84 MiB
提交时间 2026-08-28 11:11:03
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=500005;
int n,q;
ll a[N],b[N],c[N];
int p[N];
ll x[N],y[N],z[N];
void solve1(){
	for(int i=1;i<=q;i++){
		cout<<"0\n";
	}
}
void solve2(){
	ll sum=0;
	for(int i=1;i<=n;i++){
		sum+=min(a[i],b[i]); 
	}
	for(int i=1;i<=q;i++){
		sum-=min(a[p[i]],b[p[i]]);
		a[p[i]]=x[i],b[p[i]]=y[i];
		sum+=min(x[i],y[i]);
		cout<<sum<<"\n";
	}
}
void solve3(){
	for(int j=1;j<=q;j++){
		a[p[j]]=x[j],b[p[j]]=y[j],c[p[j]]=z[j];
		ll nxt=0;
		ll sum=0;
		for(int i=1;i<=n;i++){
			ll t=min(a[i]+nxt,b[i]);
			sum+=t;
			nxt=min(c[i],a[i]+nxt-t); 
		}
		cout<<sum<<"\n";	
	}
}
int main(){
    freopen("cantrefuse.in","r",stdin);
    freopen("cantrefuse.out","w",stdout);
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    cin>>n>>q;
    int f1=1,f2=1,f3=1;
    for(int i=1;i<=n;i++){
    	cin>>a[i];
    	if(a[i]) f1=0;
	}
    for(int i=1;i<=n;i++){
    	cin>>b[i];
    	if(b[i]) f2=0;
	}
    for(int i=1;i<n;i++){
    	cin>>c[i];
    	if(c[i]) f3=0;
	}
    for(int i=1;i<=q;i++){
    	cin>>p[i]>>x[i]>>y[i]>>z[i];
    	if(x[i]) f1=0;
    	if(y[i]) f2=0;
    	if(p[i]<=n-1) if(z[i]) f3=0;
	}
	if(f1||f2){
		solve1();
	}
	else if(f3){
		solve2();
	}
	else{
		solve3();
	}
    return 0;
}