Pagini recente » Monitorul de evaluare | Cod sursa (job #1527001) | Monitorul de evaluare | Cod sursa (job #1524187) | Cod sursa (job #1151421)
#include <iostream>
#include <cstdio>
#include <vector>
using namespace std;
int n,tip,numar,rest,lungime[666015];
vector <int> x[666015];
int main()
{
int i,z;
FILE *f=fopen("hashuri.in","r");
FILE *g=fopen("hashuri.out","w");
fscanf(f,"%d",&n);
for(i=1;i<=n;i++)
{
fscanf(f,"%d%d",&tip,&numar);
rest=numar%666013;
if(tip==1)
x[rest].push_back(numar/666013),lungime[rest]++;
else if(tip==2)
{
for(z=0;z<=lungime[rest]-1;z++)
{
if(x[rest][z]==numar/666013)
x[rest][z]=x[rest][lungime[rest]],lungime[rest]--;
}
}
else if(tip==3)
{
if(lungime[rest]>0)
for(z=0;z<=lungime[rest]-1;z++)
{
if(x[rest][z]==numar/666013)
fprintf(g,"1\n"),z=lungime[rest];
}
else if(lungime[rest]==0 || z==lungime[rest])
fprintf(g,"0\n");
}
}
return 0;
}