Pagini recente » Cod sursa (job #1627314) | Cod sursa (job #1761367) | Cod sursa (job #788546) | Cod sursa (job #268558) | Cod sursa (job #1318641)
#include <iostream>
#include <vector>
#include <stdio.h>
using namespace std;
vector<long long int> values[1000000];
long long int prime = 666013;
long long int n;
int ins(int num)
{
int key = num % prime;
int i = 0;
int lim = values[key].size();
while (i++ < lim)
{
if(values[key][i] == num)
return 0;
}
values[key].push_back(num);
return 0;
}
int rem(int num)
{
int key = num % prime;
int i = 0;
int lim = values[key].size();
while (i < lim)
{
if(values[key][i] == num)
{
values[key][i] = values[key][values[key].size() - 1];
values[key].pop_back();
}
i++;
}
return 0;
}
int query(int num)
{
int key = num % prime;
int i = 0;
int lim = values[key].size();
while (i < lim)
{
if(values[key][i++] == num)
return 1;
}
return 0;
}
int main()
{
freopen("hashuri.in", "r", stdin);
freopen("hashuri.out", "w", stdout);
scanf("%d",&n);
long long int i = 0;
long long int helper;
long long int num;
while (i < n)
{
scanf("%d%d",&helper,&num);
if (helper == 1)
ins(num);
else if (helper == 2)
rem(num);
else
printf("%d\n",query(num));
i++;
}
return 0;
}