Cod sursa(job #850428)

Utilizator Cantor_paulCantor Paul Dan Cantor_paul Data 8 ianuarie 2013 15:32:37
Problema Hashuri Scor 100
Compilator cpp Status done
Runda 23dezile_5 Marime 1.08 kb
#include <fstream>
#include <vector>
 
using namespace std;
 
ifstream in("hashuri.in");
ofstream out("hashuri.out");
 
const int P=666013;
 
vector <int> a[P];
 
int n;
 
void insert(int x)// facem inserarea unui nou element in lista
{
    int i;
    bool ok=0;
    for(i=0;i<a[x%P].size();i++){
        if(a[x%P][i]==x)
            ok=1;
    }
    if(ok==0){
        a[x%P].push_back(x);
    }
}
 
void sterge(int x)//facem stergerea unui element din lista de dispersii 
{
    int i;
    for(i=0;i<a[x%P].size();i++){
        if(a[x%P][i]==x){
            a[x%P].erase(a[x%P].begin()+i);
            return;
        }
    }
}
 
void query(int x)
{
    int i;
    int ok=0;
    for(i=0;i<a[x%P].size();i++){
        if(a[x%P][i]==x)
            ok=1;
    }
    out<<ok<<"\n";
}
 
int main(){
    int i,x,op;
    in>>n;
    for(i=1;i<=n;i++){
        in>>op>>x;
        if(op==1){
            insert(x);
        }
        if(op==2){
            sterge(x);
        }
        if(op==3){
            query(x);
        }
    }
    return 0;
}