Pagini recente » Diferente pentru problema/recurenta2 intre reviziile 2 si 4 | Cod sursa (job #1807581) | Cod sursa (job #2609587) | Cod sursa (job #1051180) | Cod sursa (job #2510819)
//#include <iostream>
#include <bits/stdc++.h>
# define mod 666013
using namespace std;
ifstream in("hashuri.in");
ofstream out("hashuri.out");
vector <int>v[mod];
int n;
void inserare(int x)
{
int poz=x%mod; int it=-1;
for(int j=0;j<v[poz].size();j++)
{
if(x==v[poz][j])
{
it=j;
break;
}
}
if(it==-1)
v[poz].push_back(x);
}
void stergere(int x)
{
int it=-1;
int poz=x%mod;
for(int j=0;j<v[poz].size();j++)
{
if(x==v[poz][j])
{
it=j;
break;
}
}
if(it!=-1)
v[poz].erase(v[poz].begin()+it);
}
int find(int x)
{
int poz=x%mod;
for(int j=0;j<v[poz].size();j++)
if(v[poz][j]==x)
return 1;
return 0;
}
int main()
{
in>>n;
for(int i=1;i<=n;i++)
{
int op,x; in>>op>>x;
if(op==1)
inserare(x);
else if(op==2)
stergere(x);
else
out<<find(x)<<"\n";
}
return 0;
}