Pagini recente » Cod sursa (job #1688374) | Cod sursa (job #1695729) | Cod sursa (job #3162058) | Cod sursa (job #2329819) | Cod sursa (job #912911)
Cod sursa(job #912911)
#include<cstdio>
#include<algorithm>
#include<vector>
#define mod 666013
using namespace std;
vector<int>HASH[mod];
int n,i,j,k,x;
void add(int a,int b)
{
for (j=0;j<HASH[a].size();j++) if (HASH[a][j]==b) return;
HASH[a].push_back(b);
}
void erase(int a,int b)
{
for (j=0;j<HASH[a].size();j++) if (HASH[a][j]==b)
{
HASH[a].erase(HASH[a].begin()+j);
return;
}
}
int calc(int a,int b)
{
for (j=0;j<HASH[a].size();j++) if (HASH[a][j]==b) return 1;
return 0;
}
int main()
{
freopen("hashuri.in","r",stdin);
freopen("hashuri.out","w",stdout);
scanf("%d",&n);
for (i=1;i<=n;i++)
{
scanf("%d %d",&k,&x);
if (k==1) add(x%mod,x);else
if (k==2) erase(x%mod,x);else
if (k==3) printf("%d\n",calc(x%mod,x));
}
return 0;
}