Cod sursa(job #935228)
#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 1000001
int N, M[MAXSIZE], SIZE;
int find_value(int x)
{
int i;
for (i = 0; i < SIZE; i++)
if (M[i] == x) return i;
return -1;
}
void add_value(x)
{
if (find_value(x) == -1)
M[SIZE++] = x;
}
void remove_value(x)
{
int i, p = find_value(x);
if (p != -1)
{
for (i = p; i < SIZE-1; i++)
M[i] = M[i+1];
SIZE--;
}
}
int main()
{
int op, x;
FILE *f = fopen("hashuri.in","r");
FILE *g = fopen("hashuri.out","w");
fscanf(f,"%d", &N);
int i;
for (i = 0; i < N; i++)
{
fscanf(f,"%d %d", &op, &x);
if (op == 1)
add_value(x);
if (op == 2)
remove_value(x);
if (op == 3)
if (find_value(x) != -1)
fprintf(g, "1 \n");
else
fprintf(g,"0 \n");
}
fclose(f);
fclose(g);
return 0;
}