Cod sursa(job #3130948)

Utilizator TediCutuTudor Chitu TediCutu Data 18 mai 2023 21:10:58
Problema Hashuri Scor 30
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.23 kb
#include<bits/stdc++.h>
using namespace std;
ifstream in("hashuri.in");
ofstream out("hashuri.out");

vector <vector <int>> hashh;
int p = 116351, k, c, val, x;

int main()
{
    in >> k;
    for(int i = 1; i <= k; i++)
    {
        in >> c >> val;
        x = val % p;
        while(hashh.size() <= x)
            hashh.push_back({});
        switch(c)
        {
        case 1:
        {
            for(int j = 0; j < hashh[x].size(); j++)
                if(hashh[x][j] == val)
                    break;
            hashh[x].push_back(x);
            break;
        }
        case 2:
        {
            for(int j = 0; j < hashh[x].size(); j++)
                if(hashh[x][j] == val)
                {
                    hashh[x].erase(hashh[x].begin() + j);
                    break;
                }
            break;
        }
        case 3:
        {
            int j;
            for(j = 0; j < hashh[x].size(); j++)
                if(hashh[x][j] == val)
                {
                    out << 1 << endl;
                    break;
                }
            if(j == hashh[x].size())
                out << 0 << endl;
            break;
        }
        }
    }
    return 0;
}