Cod sursa(job #2881818)

Utilizator popashtefan10Popa Stefan popashtefan10 Data 30 martie 2022 21:46:35
Problema Hashuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.73 kb
#include <iostream>
#include <cstdio>
#include <vector>
#define NMAX 1000000
#define MOD 666013

using namespace std;

int n;
vector<int> H[NMAX + 5];

int find_x(int x) {
  int h = x % MOD;
  for(int i = 0; i < H[h].size(); i++)
    if(H[h][i] == x)
      return i;
  return -1;
}

int main() {
  freopen("hashuri.in", "r", stdin);
  freopen("hashuri.out", "w", stdout);
  int x, op;

  scanf("%d", &n);
  for(int i = 1; i <= n; i++) {
    scanf("%d %d", &op, &x);
    int poz = find_x(x), h = x % MOD;
    if(op == 1 && poz == -1)
      H[h].push_back(x);
    else if(op == 2 && poz != -1)
      H[h].erase(H[h].begin() + poz);
    else if(op == 3)
      printf("%d\n", (poz == -1) ? 0 : 1);
  }

  return 0;
}