Cod sursa(job #714683)

Utilizator mihaita007alin bucuresteanu mihaita007 Data 15 martie 2012 22:52:43
Problema Hashuri Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.92 kb
#include <cstdio>
#define prim   7517
using namespace std;

int v[prim][prim];

int Search(int x){
int i=x%prim,d=0;
for (int j=0;j<prim;j++)
    if (v[i][j]==x) d=1;
    if (d==0) return -1;
            else return  1;

}

void insert(int x){
 int i=x%prim,d=0,j1;
    for (int j=0;j<prim;j++){
    if (v[i][j]==x) d=1;
        if (v[i][j]==0) { j1=j; break;}
    }
    if (d==0) v[i][j1]=x;

}

void del(int x){
int i=x%prim,d=0;
    for (int j=0;j<prim;j++)
    if (v[i][j]==x) {
    for(int k=j;k<prim-1;k++)
        v[i][k]=v[i][k+1];
    };
}

int main(){
    int  n, key, op;
	freopen ("hashuri.in", "r", stdin);
	scanf("%d", &n);
	freopen("hashuri.out", "w", stdout);
    for (int i = 0; i < n; i++){
		scanf("%d %d", &op, &key);
		if (op == 1) insert(key);
		if (op == 2) del(key);
		if (op == 3) if (Search(key)== -1) printf("%d\n",0);
                        else printf("%d\n",1);

	}
}