Pagini recente » Cod sursa (job #3228163) | Cod sursa (job #3234205) | Cod sursa (job #3300332) | Cod sursa (job #419164) | Cod sursa (job #911445)
Cod sursa(job #911445)
#include <cstdio>
#include <vector>
#define M 99971
using namespace std;
vector < int > H[M];
int y;
bool Search(int ind, int val)
{
unsigned int m = H[ind].size();
for(unsigned int i = 0; i < m; ++ i)
if(H[ind][i] == val)
return 1;
return 0;
}
void Add(int x)
{
if(!Search(y, x))
H[y].push_back(x);
}
void Delete(int ind, int val)
{
unsigned int m = H[ind].size();
for(unsigned int i = 0; i < m; ++ i)
if(H[ind][i] == val)
{
H[ind].erase(H[ind].begin() + i);
return;
}
}
void Remove(int x)
{
if(Search(y, x))
Delete(y, x);
}
int main()
{
int n;
int c;
int x;
freopen("hashuri.in", "r", stdin);
freopen("hashuri.out", "w", stdout);
scanf("%d\n", &n);
while(n --)
{
scanf("%d %d\n", &c, &x);
y = x % M;
if(c == 1)
Add(x);
else
if(c == 2)
Remove(x);
else
if(Search(y, x))
printf("1\n");
else
printf("0\n");
}
return 0;
}