1 条题解

  • 0
    @ 2025-9-16 14:30:21

    参考题解

    a,b存数组并且使用type记录当前位置选的是a里面的还是b里面的。这里0为a,1为b。 每次进行修改的时候 首先清除当前位置的最小累加,修改完成之后再加上即可。

    
    #include <iostream>
    #include <vector>
    #include <algorithm>
    #include <queue>
    #include <deque>
    #include <unordered_map>
    #include <map>
    #include <cstring>
    #include <cmath>
    #include <unordered_set>
    #include <set>
    #include <utility>
    #include <climits>
    #include <iomanip>
    #include <stack>
    #include <bitset>
    
    #define int long long
    #define PII pair<int, int> 
    #define TLLL tuple<int , int , int>
    #define INF 0x3f3f3f3f3f3f3f3f
    #define inf 0x3f
    #define all(v) v.begin() + 1 , v.end()
    #define ALL(v) v.begin() , v.end()
    #define endl "\n"
    using namespace std;
    
    void solve()
    {
        int n , q;
        cin >> n >> q;
        vector<int> a(n + 1) , b(n + 1) , type(n + 1);
    
        for (int i = 1 ; i <= n ; i ++ ) cin >> a[i];
        for (int i = 1 ; i <= n ; i ++ ) cin >> b[i];
    
        int mina = 0 , minb = 0;
    
        for (int i = 1 ; i <= n ; i ++ )
            if (a[i] <= b[i]) mina += a[i] , type[i] = 0;
            else minb += b[i] , type[i] = 1; 
    
        while (q -- )
        {
            char c;
            int x , y;
            cin >> c >> x >> y;
    
            if (type[x] == 0) mina -= a[x];
            else minb -= b[x];
    
            if (c == 'A') a[x] = y;
            else b[x] = y;
    
            if (a[x] <= b[x])
                type[x] = 0 , mina += a[x];
            else type[x] = 1 , minb += b[x];
    
    
            
            cout << mina + minb << endl;
        }
    
        return ;
    }
    
    signed main() 
    {
        ios::sync_with_stdio(false);
        cin.tie(nullptr), cout.tie(nullptr);
        int T = 1;
        // cin >> T;
        while (T -- ) solve();
        return 0;
    }
    
    
    
    • 1

    信息

    ID
    5620
    时间
    1000ms
    内存
    256MiB
    难度
    8
    标签
    递交数
    45
    已通过
    8
    上传者