Pagini recente » Cod sursa (job #2547615) | Cod sursa (job #2567013) | Cod sursa (job #2642063) | Cod sursa (job #61862) | Cod sursa (job #238665)
Cod sursa(job #238665)
#include <fstream>
#include <vector>
using namespace std;
const int MOD=112358;
vector<int> H[MOD];
int h(int x){
return x%MOD;
}
vector<int>::iterator find(int x){
int i=h(x);
vector<int>::iterator it;
for (it=H[i].begin();it!=H[i].end();++it)
if (*it==x) return it;
return it;
}
void add(int x){
int i=h(x);
if (find(x)!=H[i].end()) return;
H[i].push_back(x);
}
void sterge(int x){
int i=h(x);
if (find(x)==H[i].end()) return;
H[i].erase(find(x));
}
int main(){
int N,op,x;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
for (fin>>N;N;N--){
fin>>op>>x;
switch(op){
case 1:add(x);break;
case 2:sterge(x);break;
case 3:if (find(x)!=H[h(x)].end())
fout<<"1\n";
else
fout<<"0\n";
break;
}
}
return 0;
}