Pagini recente » Cod sursa (job #917105) | Cod sursa (job #39908) | Cod sursa (job #947289) | Cod sursa (job #1247512) | Cod sursa (job #731208)
Cod sursa(job #731208)
#include <stdio.h>
#include <vector>
using namespace std;
const int MAX = 600005;
vector<int> v[MAX];
void insert(int el)
{
int cod = el % MAX, found = 0;
for(size_t i = 0; i < v[cod].size() && !found; i++)
if(v[cod][i] == el) found++;
if(!found)
v[cod].push_back(el);
}
void remove(int el)
{
int cod = el % MAX, found = 0;
for(size_t i = 0; i < v[cod].size() && !found; i++)
if(v[cod][i] == el) {v[cod].erase(v[cod].begin() + i); found++;}
}
int Find(int el)
{
int cod = el % MAX;
for(size_t i = 0; i < v[cod].size(); i++)
if(v[cod][i] == el) return 1;
return 0;
}
int main()
{
freopen("hashuri.in", "r", stdin);
freopen("hashuri.out", "w", stdout);
int n, op, a;
scanf("%d", &n);
while(n--)
{
scanf("%d %d", &op, &a);
switch(op)
{
case 1: insert(a); break;
case 2: remove(a); break;
case 3: printf("%d\n", Find(a)); break;
}
}
return 0;
}