Pagini recente » Cod sursa (job #676761) | Cod sursa (job #2809623) | Cod sursa (job #2915385) | Cod sursa (job #2908144) | Cod sursa (job #255207)
Cod sursa(job #255207)
#include<stdio.h>
#include<vector>
using namespace std;
FILE*fin=fopen("hashuri.in","r");
FILE*fout=fopen("hashuri.out","w");
#define p 666013
int n;
vector<int> str[p];
vector<int>::iterator find(int x)
{
vector<int>::iterator i;
int loc=x%p;
for(i=str[loc].begin();i!=str[loc].end();i++)
if(*i==x) return i;
return str[loc].end();
}
void add(int x)
{
int loc=x%p;
if(find(x)==str[loc].end()) str[loc].push_back(x);
}
void del(int x)
{
int loc=x%p;
vector<int>::iterator i=find(x);
if(i!=str[loc].end()) str[loc].erase(i);
}
int main()
{
int op,x,i;
fscanf(fin,"%d",&n);
for(i=1;i<=n;i++)
{
fscanf(fin,"%d%d",&op,&x);
if(op==1) add(x);
if(op==2) del(x);
if(op==3) if(find(x)!=str[x%p].end()) fprintf(fout,"1\n");
else fprintf(fout,"0\n");
}
fclose(fin);
fclose(fout);
return 0;
}