Pagini recente » Cod sursa (job #1806118) | Cod sursa (job #258247) | Cod sursa (job #1998364) | Cod sursa (job #233133) | Cod sursa (job #1537465)
#include <cstdio>
#include <vector>
using namespace std;
#define MOD 666013
FILE *fin = fopen("hashuri.in","r");
FILE *fout = fopen("hashuri.out","w");
int N, tip, nr;
vector <vector <int> > MyHash;
int main() {
fscanf(fin, "%d\n", &N);
MyHash.resize(MOD + 2);
while(N) {
--N;
fscanf(fin, "%d %d\n", &tip, &nr);
if(tip == 1) {
int cat = nr / MOD;
int rest = nr % MOD;
int was = 0;
for(auto x: MyHash[rest]) {
if(x == cat) {
was = 1;
break;
}
}
if(!was) {
MyHash[rest].push_back(cat);
}
}
else
if(tip == 2) {
int cat = nr / MOD;
int rest = nr % MOD;
int th = 0;
for(auto x: MyHash[rest]) {
if(x == cat) {
MyHash[rest].erase(MyHash[rest].begin() + th);
break;
}
++th;
}
}
else
if(tip == 3) {
int cat = nr / MOD;
int rest = nr % MOD;
int was = 0;
for(auto x: MyHash[rest]) {
if(x == cat) {
was = 1;
break;
}
}
fprintf(fout, "%d\n", was);
}
}
fclose(fin);
fclose(fout);
return 0;
}