Pagini recente » Monitorul de evaluare | Rezultatele filtrării | Cod sursa (job #2367946) | Rezultatele filtrării | Cod sursa (job #2627518)
#include <iostream>
#include<fstream>
#include<vector>
#define hsh 765321
using namespace std;
ifstream f("hshuri.in");
ofstream g("hshuri.out");
vector<int>V[hsh];
int search(int n)
{
int q = n % hsh;
vector<int>::iterator i;
for(i=V[q].begin();i!=V[q].end();++i)
{
if(*i==n)
return 1;
}
return 0;
}
void add(int n)
{
int q=n%hsh;
if(!search(n))
V[q].push_back(n);
}
void del(int n)
{
int q=n%hsh;
vector<int>::iterator i;
for(i = V[q].begin(); i != V[q].end(); i ++)
{
if(*i == n)
{
V[n % hsh].erase(i);
break;
}
}
}
int main()
{
int n, op, nr;
f>>n;
for(int i=0;i<n;i++)
{
f>>op>>nr;
switch(op)
{
case 1:
add(nr);
break;
case 2:
if (search(nr)) del(nr);
break;
case 3:
g << search(nr)<<'\n';
}
}
return 0;
}