Pagini recente » Cod sursa (job #2728476) | Cod sursa (job #794060) | Cod sursa (job #1637323) | Cod sursa (job #582095) | Cod sursa (job #847686)
Cod sursa(job #847686)
#include <fstream>
#include <vector>
const int tab=666013;
using namespace std;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
vector<int> list[tab+5];
void adauga(int c);
void sterge(int c);
int find(int c);
int main()
{int n,op,c,ok=0;
f>>n;
for(int i=0;i<n;i++)
{
f>>op>>c;
switch (op)
{
case 1: adauga(c); break; // adauga
case 2: sterge(c); break; // sterge
case 3: g<<find(c)<<'\n';break; // gaseste
}
}
f.close();
g.close();
return 0;
}
void adauga(int c)
{
if(find(c)==0)
{
int p=c%tab;
list[p].push_back(c);
}
}
void sterge(int c)
{
int p=c%tab;
for(vector<int>::iterator i=list[p].begin();i!=list[p].end(); i++)
{
if(*i==c)
{
list[p].erase(i);
break;
}
}
}
int find(int c)
{
int p=c%tab;
for(vector<int>::iterator i=list[p].begin();i!=list[p].end(); i++)
if(*i ==c) return 1;
return 0;
}