Pagini recente » Cod sursa (job #444076) | Cod sursa (job #1372306) | Cod sursa (job #773766) | Cod sursa (job #1850846) | Cod sursa (job #421953)
Cod sursa(job #421953)
#include <cstdio>
#include <vector>
using namespace std;
#define NMAX 1000010
#define MOD 543997
int N;
vector<int> V[MOD];
/*bool e[NMAX];
void ciur()
{
for(int i = 2 ; i * i < NMAX ; i++)
if(!e[i])
for(int j = i * i ; j < NMAX ; j += i)
e[j] = 1;
int nr = 0;
for(int i = 543987 ; nr < 2 && i < NMAX; i++)
if(!e[i])
{
printf("%d\n",i);
nr++;
}
}*/
vector<int> :: iterator find(int x)
{
vector<int> :: iterator it;
for(it = V[x % MOD].begin() ; it != V[x % MOD].end() ; it++)
if(*it == x)
return it;
return V[x % MOD].end();
}
void insert(int x)
{
if(find(x) == V[x % MOD].end())
V[x % MOD].push_back(x);
}
void out(int x)
{
vector<int> :: iterator it = find(x);
if(it != V[x % MOD].end())
V[x % MOD].erase(it);
}
void citeste()
{
int id , x;
scanf("%d",&N);
for(int i = 1 ; i <= N ; i++)
{
scanf("%d%d",&id,&x);
if(id == 1)
insert(x);
if(id == 2)
out(x);
if(id == 3)
printf("%d\n",find(x) != V[x % MOD].end());
}
}
int main()
{
freopen("hashuri.in","r",stdin);
freopen("hashuri.out","w",stdout);
//ciur();
citeste();
return 0;
}