제출 #1148212

#제출 시각아이디문제언어결과실행 시간메모리
1148212Ghulam_JunaidInfinite Race (EGOI24_infiniterace2)C++20
51 / 100
1096 ms9800 KiB
#include <bits/stdc++.h>
using namespace std;

int main(){
    ios::sync_with_stdio(0); cin.tie(0);
    int n;
    cin >> n;

    set<int> a, b;
    for (int i = 1; i < n; i ++)
        a.insert(i);

    int q;
    cin >> q;
    int ans = 0;
    while (q--){
        int i;
        cin >> i;

        if (i < 0){
            i = -i;
            b.erase(i);
            a.insert(i);
        }
        else{
            if (a.find(i) != a.end()){
                a.erase(i);
                b.insert(i);
            }
            else{
                if (b.size() <= a.size()){
                    b.erase(i);
                    for (int x : b)
                        a.insert(x);
                    b.insert(i);
                }
                else{
                    for (int x : a)
                        b.insert(x);
                    b.erase(i);
                    a.insert(i);
                    swap(a, b);
                }
                ans++;
            }
        }
    }

    cout << ans << endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...