Cod sursa(job #2223804)
Utilizator | Data | 21 iulie 2018 16:10:21 | |
---|---|---|---|
Problema | Hashuri | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 1.2 kb |
#include <fstream>
#include <vector>
using namespace std;
vector <int> v[700000];
int n,i,j,a,k,OK,I,x;
const int mod=666013;
int main()
{
ifstream f("hashuri.in");
ofstream g("hashuri.out");
f>>n;
for(j=1;j<=n;j++)
{
f>>a>>x;
k=x%mod;
if(a==1)
{
I=-1;OK=0;
for(i=0;i<v[k].size();i++)
{
if(v[k][i]==-1)
I=i;
if(v[k][i]==x)
{
OK=1;
break ;
}
}
if(!OK && I>=0)
v[k][I]=x;
else
if(!OK)
v[k].push_back(x);
}
if(a==2)
{
for(i=0;i<v[k].size();i++)
if(v[k][i]==x)
{
v[k][i]=-1;
break ;
}
}
if(a==3)
{
OK=0;
for(i=0;i<v[k].size();i++)
if(v[k][i]==x)
{
OK=1;
g<<1<<'\n';
}
if(!OK)
g<<0<<'\n';
}
}
return 0;
}