Cod sursa(job #1503344)

Utilizator redcrocodileIlies Andreea redcrocodile Data 15 octombrie 2015 22:26:35
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.95 kb
#include <fstream>
#include <vector>

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

vector<int> a[500000];

vector<int>::iterator aparitie(int x)
{
    int rest = x % 500000;
    vector<int>::iterator it;
    for (it = a[rest].begin(); it!=a[rest].end(); it++)
        if (*it==x) return it;
    return a[rest].end();
}
void apare(int x)
{
    int rest = x % 500000;
    if(aparitie(x) != a[rest].end()) g<<1<<"\n"; else g<<0<<"\n";
}
void insereaza(int x)
{
    int rest = x % 500000;
    if (aparitie(x) == a[rest].end()) a[rest].push_back(x);
}
void sterge(int x)
{
    int rest = x % 500000;
    vector<int>::iterator it = aparitie(x);
    if (it != a[rest].end()) a[rest].erase(it);
}
int main()
{
    int n,i,ins,x;
    f>>n;
    for(i=1;i<=n;i++)
    {
        f>>ins>>x;
        if (ins==1) insereaza(x);
        if (ins==2) sterge(x);
        if (ins==3) apare(x);
    }
    return 0;
}