比赛 20251001国庆欢乐赛1 评测结果 WWEEETETTT
题目名称 有n种物品 最终得分 0
用户昵称 tomato的 运行时间 8.646 s
代码语言 C++ 内存使用 4.26 MiB
提交时间 2025-10-01 10:06:54
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 100005;
struct bj{
    ll zhi;
    ll wz;
} a[N], b[N];
ll n, s1 = 0, s2 = 0;
int op;
void js(){
    ll an = 0, bn = 0, k, l;
    for(ll i = 1; i <= n; i++){
        if(a[i].wz == 1){
            if(a[i].zhi > an){
                an = a[i].zhi;
                k = i;
            }
        }
        if(b[i].wz == 1){
            if(b[i].zhi > bn){
                bn = b[i].zhi;
                l = i;
            }
        }
    }
    if(op == 1){
        if(an > bn){
            s1 += an;
            a[k].wz--;
        }else{ 
            s1 += bn;
            b[l].wz--;
        }
    }else{
        if(an > bn){
            s2 += an;
            a[k].wz--;
        }else{
            s2 += bn;
            b[l].wz--;
        }
    }
}
int main(){
    freopen("nit.in", "r", stdin);
    freopen("nit.out", "w", stdout);
    cin >> n;
    for(ll i = 1; i <= n; i++){
        cin >> a[i].zhi >> b[i].zhi;
        a[i].wz = 1;
        b[i].wz = 2;
    }
    for(ll i = 1; i <= 2 * n; i++){
        if(i % 2 == 1){
            op = 1;
            js();
        }else{
            op = 0;
            js();
        }
    }
    cout << s1 - s2;
    return 0;
}