Submission #3150759


Source Code Expand

#include<bits/stdc++.h>
using namespace std;

using ll=long long;

int main(){
    int n;
    int q;
    cin>>n>>q;

    vector<ll> a(2*n),b(2*n);
    for(int i=0;i<2*n;i++) cin>>a[i];
    for(int i=0;i<2*n;i++) cin>>b[i];
    
    ll psum=0;
    ll bsum=0;
    multiset<ll> ps;
    multiset<ll> ns;
    for(int i=1;i<2*n-1;i++){
        bsum+=b[i];
        if(a[i]-b[i]>=0){
            ps.insert(a[i]-b[i]);
            psum+=a[i]-b[i];
        }
        else ns.insert(a[i]-b[i]);
    }
    
    while(q--){
        int p;
        ll ax,bx;
        cin>>p>>ax>>bx;
        p--;
        if(p==0 || p==2*n-1){
            a[p]=ax;
            b[p]=bx;
        }
        else{
            bsum+=bx-b[p];
            if(a[p]-b[p]>=0){
                ps.erase(ps.find(a[p]-b[p]));
                psum-=a[p]-b[p];
            }
            else{
                ns.erase(ns.find(a[p]-b[p]));
            }
            a[p]=ax,b[p]=bx;
            if(a[p]-b[p]>=0){
                ps.insert(a[p]-b[p]);
                psum+=a[p]-b[p];
            }
            else ns.insert(a[p]-b[p]);
        }
        if(n==1){
            cout<<a[0]+a[1]<<endl;
        }
        else if(ns.size()%2){
            ll vp=*ps.begin();
            ll vn=*(--ns.end());
            cout<<a[0]+a[2*n-1]+bsum+psum+max(-vp,vn)<<endl;
        }   
        else{
            cout<<a[0]+a[2*n-1]+psum+bsum<<endl;
        }                 
    }


    return 0;
}

Submission Info

Submission Time
Task C - Paired Parentheses
User nikutto
Language C++14 (GCC 5.4.1)
Score 700
Code Size 1509 Byte
Status AC
Exec Time 581 ms
Memory 14208 KB

Judge Result

Set Name Sample Subtask1 Subtask2 All
Score / Max Score 0 / 0 200 / 200 300 / 300 200 / 200
Status
AC × 2
AC × 14
AC × 15
AC × 43
Set Name Test Cases
Sample 00_example_01.txt, 00_example_02.txt
Subtask1 00_example_01.txt, s1_01.txt, s1_02.txt, s1_03.txt, s1_04.txt, s1_05.txt, s1_06.txt, s1_07.txt, s1_08.txt, s1_09.txt, s1_10.txt, s1_11.txt, s1_12.txt, s1_13.txt
Subtask2 s2_14.txt, s2_15.txt, s2_16.txt, s2_17.txt, s2_18.txt, s2_19.txt, s2_20.txt, s2_21.txt, s2_22.txt, s2_23.txt, s2_24.txt, s2_25.txt, s2_26.txt, s2_27.txt, s2_28.txt
All 00_example_01.txt, 00_example_02.txt, s1_01.txt, s1_02.txt, s1_03.txt, s1_04.txt, s1_05.txt, s1_06.txt, s1_07.txt, s1_08.txt, s1_09.txt, s1_10.txt, s1_11.txt, s1_12.txt, s1_13.txt, s2_14.txt, s2_15.txt, s2_16.txt, s2_17.txt, s2_18.txt, s2_19.txt, s2_20.txt, s2_21.txt, s2_22.txt, s2_23.txt, s2_24.txt, s2_25.txt, s2_26.txt, s2_27.txt, s2_28.txt, s3_29.txt, s3_30.txt, s3_31.txt, s3_32.txt, s3_33.txt, s3_34.txt, s3_35.txt, s3_36.txt, s3_37.txt, s3_38.txt, s3_39.txt, s3_40.txt, s3_41.txt
Case Name Status Exec Time Memory
00_example_01.txt AC 1 ms 256 KB
00_example_02.txt AC 1 ms 256 KB
s1_01.txt AC 1 ms 256 KB
s1_02.txt AC 1 ms 256 KB
s1_03.txt AC 1 ms 256 KB
s1_04.txt AC 1 ms 256 KB
s1_05.txt AC 1 ms 256 KB
s1_06.txt AC 1 ms 256 KB
s1_07.txt AC 1 ms 256 KB
s1_08.txt AC 1 ms 256 KB
s1_09.txt AC 1 ms 256 KB
s1_10.txt AC 1 ms 256 KB
s1_11.txt AC 1 ms 256 KB
s1_12.txt AC 1 ms 256 KB
s1_13.txt AC 1 ms 256 KB
s2_14.txt AC 8 ms 768 KB
s2_15.txt AC 9 ms 896 KB
s2_16.txt AC 129 ms 8832 KB
s2_17.txt AC 105 ms 7424 KB
s2_18.txt AC 192 ms 12800 KB
s2_19.txt AC 193 ms 12800 KB
s2_20.txt AC 192 ms 12800 KB
s2_21.txt AC 193 ms 12800 KB
s2_22.txt AC 9 ms 768 KB
s2_23.txt AC 9 ms 896 KB
s2_24.txt AC 9 ms 768 KB
s2_25.txt AC 236 ms 12800 KB
s2_26.txt AC 236 ms 12800 KB
s2_27.txt AC 237 ms 12800 KB
s2_28.txt AC 237 ms 12800 KB
s3_29.txt AC 190 ms 8832 KB
s3_30.txt AC 282 ms 4480 KB
s3_31.txt AC 163 ms 10240 KB
s3_32.txt AC 477 ms 11136 KB
s3_33.txt AC 193 ms 7040 KB
s3_34.txt AC 554 ms 14208 KB
s3_35.txt AC 562 ms 14208 KB
s3_36.txt AC 554 ms 14208 KB
s3_37.txt AC 581 ms 14208 KB
s3_38.txt AC 561 ms 14208 KB
s3_39.txt AC 572 ms 14208 KB
s3_40.txt AC 244 ms 1024 KB
s3_41.txt AC 243 ms 1024 KB