Cod sursa(job #1735890)

Utilizator patrixKovacs Patrik patrix Data 31 iulie 2016 15:44:42
Problema Hashuri Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 1.08 kb
#include <iostream>
#include <fstream>
#include <unordered_map>
#include <vector>
#include <list>

#define cin in
#define cout out

#define SIZE 1000

using namespace std;

struct adat
{
    bool b;
    unsigned id;
};
vector < vector <adat> > x;

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

vector <adat>::iterator find (vector < vector<adat> >& x,unsigned t)
{
    unsigned id = t % SIZE;

    for (vector <adat>::iterator i = x[id].begin(); i < x[id].end(); i++)
        if (i -> id == t)
        return i;


    adat temp1;
    temp1.b = 0;
    temp1.id = t;
    x[id].push_back (temp1);

    return x[id].end() - 1;
}
int main()
{
    int n;
    cin >> n;

    x.resize (SIZE);

    int q, w;
    vector <adat>::iterator t;
    for (int i=1;i<=n;i++)
    {
        cin >> q >> w;
        t = find (x, w);

        if (q == 1)
        {
            t -> b = 1;
        }
        else
        if (q == 2)
        {
            t -> b = 0;
        }
        else
        {
            cout << t->b << "\n";
        }
    }
}