Cod sursa(job #1092496)

Utilizator Dddarius95Darius-Florentin Neatu Dddarius95 Data 27 ianuarie 2014 10:05:38
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");

const int mod=100003;
vector<int> H[mod];

void insert(int x)
{
    int r=x%mod; vector<int>::iterator it;
    for(it=H[r].begin(); it!=H[r].end(); it++)
        if(*it==x) return;
    H[r].push_back(x);
}
void elimina(int x)
{
    int r=x%mod; vector<int>::iterator it;
    for(it=H[r].begin(); it!=H[r].end(); it++)
        if(*it==x) break;
    if(it!=H[r].end())
    {
        *it=H[r].back();
        H[r].pop_back();
    }
}
void search(int x)
{
    int r=x%mod; vector<int>::iterator it;
    for(it=H[r].begin(); it!=H[r].end(); it++)
        if(*it==x) { g<<1<<'\n'; return;}
    g<<0<<'\n';
}
int main()
{
    int n, tip, x; f>>n;
    for(int i=1; i<=n; i++)
    {
        f>>tip>>x;
        if(tip==1) insert(x);
          else if(tip==2) elimina(x);
            else search(x);
    }
    return 0;
}