Pagini recente » Cod sursa (job #225716) | Cod sursa (job #1079109) | Cod sursa (job #1210287) | Cod sursa (job #1113908) | Cod sursa (job #370580)
Cod sursa(job #370580)
#include <fstream>
struct node{
node* next;
int val;
};
node* c[1000000];
int main(){
std::ifstream f("hashuri.in");
std::ofstream g("hashuri.out");
int n;
f>>n;
int op,val;
node* p,*tmp;
while(n--){
f>>op>>val;
p=c[val%1000000];
switch(op){
case 1:
tmp=new node;
tmp->val=val;
tmp->next=p;
c[val%1000000]=tmp;
break;
case 2:
if(!p)
break;
if(p->val==val)
c[val%1000000]=p->next;
else{
while(p->next&&p->next->val!=val)
p=p->next;
if(p->next){
tmp=p->next;
p->next=p->next->next;
delete tmp;
}
}
break;
case 3:
while(p&&p->val!=val)
p=p->next;
if(p)
g<<"1\n";
else
g<<"0\n";
}
}
return 0;
}