Cod sursa(job #2619177)

Utilizator Razvank206Dumitriu Razvan Razvank206 Data 27 mai 2020 11:13:26
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1 kb

#include <cstdio>
#include <vector>
#include <fstream>
#define N 666663
using namespace std;

ifstream f("hashuri.in");
ofstream g("hashuri.out");



vector<int> H[N];

int cauta( int a){
    int k = a % N;

    vector<int> :: iterator i;
	for (i=H[k].begin(); i!=H[k].end(); ++i)
		 if (*i==a)
			 return 1;
	return 0;
}

void adauga( int a){
    int k= a % N;
    H[k].push_back(a);
}

void sterge( int a){

    int k = a % N;

	vector<int> :: iterator i;
	for (i=H[k].begin(); i!=H[k].end(); ++i)
		 if (*i == a){
			 H[k].erase(i);
			 break;
		 }


}
int main()
{
     int n;
    f >> n;
    for (int i = 0; i < n; ++i) {
        int op, z;
        f >> op >> z;
        switch (op)
        {
            case 1:
                if (!cauta(z)) adauga(z);
                break;
            case 2:
                if (cauta(z)) sterge(z);
                break;
            case 3:
                g << cauta(z) << '\n';
        }
    }
    return 0;
}