Cod sursa(job #1522606)

Utilizator sebinechitasebi nechita sebinechita Data 11 noiembrie 2015 20:52:34
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 1.07 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("hashuri.in");
ofstream fout("hashuri.out");
#define MOD 666013

typedef vector <int> :: iterator iter;
vector <int> G[MOD];

int n, t, x, has, i;

bool exista(int x)
{
    int has = x % MOD;
    for(iter it = G[has].begin() ; it != G[has].end() ; it++)
    {
        if(*it == x)
            return 1;
    }
    return 0;
}

int main()
{
    fin >> n;
    while(n--)
    {
        fin >> t >> x;
        //cout << t << " " << x << "\n";
        if(t == 1)
        {
            if(!exista(x))
                G[x % MOD].push_back(x);
        }
        else if(t == 2)
        {
            has = x % MOD;
            for(i = 0 ; i < G[has].size() ; i++)
            {
                if(G[has][i] == x)
                {
                    swap(G[has][i], G[has][G[has].size() - 1]);
                    G[has].pop_back();
                }
            }
        }
        else
        {
            fout << exista(x) << "\n";
        }
    }
}