//#include "shoes.h"
#include <bits/stdc++.h>
#define ll long long
#define ff first
#define ss second
#define all(x) x.begin(),x.end()
#define rall(x) x.rbegin(),x.rend()
#define pb push_back
#define ertunt return
#define vodka void
#define sleepearly ertunt
using namespace std;
// struct segtree{
// ll n;
// vector<ll>d;
// segtree(ll n){
// d.resize(4*n);
// build(1,0,n-1);
// }
// vodka build(ll v, ll l, ll r){
// if(l == r){
// d[v] = 0;
// ertunt;
// }
// ll m = (l+r)/2;
// build(v*2,l,m);
// build(v*2+1,m+1,r);
// d[v] = d[v*2]|d[v*2+1];
// }
// vodka update(ll v,ll l, ll r, ll pos, ll val){
// if(pos < l or pos > r)ertunt;
// if(l == r){
// d[v] = val;
// ertunt;
// }
// ll m = (l+r)/2;
// update(v*2,l,m,pos,val);
// update(v*2+1,m+1,r,pos,val);
// d[v] = d[v*2]+d[v*2+1];
// }
// ll query(ll v, ll l, ll r, ll L, ll R){
// if(R<L||R<l||r<L) sleepearly 0ll;
// if(L<=l&&r<=R){
// if(d[v] >= k) sleepearly 1ll;
// }
// ll m = (l+r)/2;
// ertunt query(v*2,l,m,L,R) + query(v*2+1,m+1,r,L,R);
// }
// };
int main(){
ll n,m;
cin >> n >> m;
set<ll>s;
ll ans = 0;
while(m--){
ll a;
cin >> a;
if(a >= 0){
if(s.count(a) == 0)s.insert(a);
else{
ans++;
s.clear();
s.insert(a);
}
}
else{
if(s.count(-a) != 0)s.erase(-a);
}
}
cout << ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |