Submission #1194660

#TimeUsernameProblemLanguageResultExecution timeMemory
1194660connectInfinite Race (EGOI24_infiniterace2)C++17
0 / 100
10 ms3400 KiB
// kill me
// i'm so tired, why all me live in troubles?

#include <iostream>
#include <algorithm>
#include <bits/stdc++.h>
#include <random>
#include <chrono>


// fast_pragmas

//#pragma GCC optimize("O3")
//#pragma GCC optimize("Ofast")
//#pragma GCC optimize ("unroll-loops")
//#pragma GCC target("avx,avx2,tune=native")

// fast_pragmas ended

//#pragma comment(linker, "/stack:200000000")
//#pragma GCC optimize("Ofast")
//#pragma GCC optimize("O3,unroll-loops")
//#pragma GCC target("sse,sse2,sse3,ssse3,sse4")
//#pragma GCC target("avx2,bmi,bmi2,popcnt,lzcnt")

using namespace std;

#define ull unsigned long long
#define ll long long
#define ld long double
#define speed ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0)
#define endl '\n'
#define yes cout<<"YES"<<endl
#define no cout<<"NO"<<endl
#define pb push_back
#define ln log
#define lg log10
#define log log2
#define here cout<<"HERE"<<endl

const ll clasik = 2e5+7;
const ll mln = 1e6+7;
//const ll mod = 1e9+7;
const ll mod = 998244353;
const ll block_size = 450;
const ll INF = 1e17;

ll df[clasik] , fd[clasik];

ll pos[clasik] , pov[clasik];

void solve() {

    ll n , q;

    cin>>n>>q;
    ll res = 0;
    for (int i = 1 ; i<n ; i++) {
        pos[i] = 1;
        pov[i] = 0;
    }
    ll vid = 0;
    for (int i =1 ; i<=q ; i++) {
        ll x;
        cin>>x;
        if (x < 0) {
            pos[abs(x)] = 1;
            pov[abs(x)] = 0;
            
            continue;
        }
        else {
            if (pos[x] == 1) {
                pos[x] = 0;
                continue;
            }
            //cout<<"HERE"<<vid<<endl;
            if (pov[x] == vid) {
                res++;
                pos[x] = 0;
                pov[x] = vid+1;
                vid++;
                continue;
            }

            pos[x] = 0;
            pov[x] = vid;
        }
    }

    cout<<res<<endl;

}

signed main() {

    //freopen("test.txt" , "r" , stdin);

    speed;
    int test;
    test=1;
    //precalc();
    //cin>>test;
    for (int tt=1 ;tt<=test ; tt++) {
        solve();
    }

    return 0;

}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...