Cod sursa(job #2111373)

Utilizator alex.sirbuSirbu Alexandru alex.sirbu Data 21 ianuarie 2018 22:34:40
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 1.08 kb
#include <iostream>
#include <fstream>
#include <list>
#include <vector>
#include <algorithm>

using namespace std;

ifstream fin("hashuri.in");
ofstream fout("hashuri.out");

//const int key=131071;
const int key=524287;

vector < list<int> > v(key);

bool findx(list<int> k, int x)
{
    list <int>::iterator it;
    it=find(k.begin(), k.end(), x);
    if(it!=k.end())
        return true;
    return false;
}

void read()
{
    int i, j, n;
    fin>>n;
    for(int k=1; k<=n; k++)
    {
        fin>>i>>j;
        switch(i)
        {
        case 1:
            if(!findx(v[j%key], j/key))
                v[j%key].push_back(j/key);
            break;
        case 2:
            if(findx(v[j%key], j/key))
                v[j%key].remove(j/key);
            break;
        case 3:
            fout<<findx(v[j%key], j/key)<<'\n';
            break;
        }
    }
}

/*bool prim(int x)
{
    for(int i=3; i<=x/2; i++)
    if(x%i==0) {cout<<i<<'\n'; return false;}
    return true;
}*/

int main()
{
    read();
    //cout<<prim(524287);
}