#include<iostream>
#include<vector>
#include<cstdio>
#include<queue>
using namespace std;
struct animal{
int number;
int order;
animal(int n,int o):number(n),order(o){}
};
int main(){
queue<animal> cats;
queue<animal> dogs;
int n;
int order=0;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
int method,type;
scanf("%d%d",&method,&type);
if(method==1) //有动物进入收容所
{
if(type>0)
dogs.push(animal(type,order++));
else
cats.push(animal(type,order++));
}
else if(method==2){ //有人要收养动物
if(type==0&!dogs.empty()&&!cats.empty())
{
if(dogs.front().order<cats.front().order)
{
printf("%d",dogs.front().number);
dogs.pop();
}
else{
printf("%d",cats.front().number);
cats.pop();
}
}
else if(type==0&&dogs.empty()&&!cats.empty())
{
printf("%d",cats.front().number);
cats.pop();
}
else if(type==0&&!dogs.empty()&&cats.empty())
{
printf("%d",dogs.front().number);
dogs.pop();
}
else if(type==1&&!dogs.empty())
{
printf("%d",dogs.front().number);
dogs.pop();
}
else if(type==-1&&!cats.empty())
{
printf("%d",cats.front().number);
cats.pop();
}
}
}
cout<<endl;
return 0;
}
猫狗收容所
最新推荐文章于 2024-05-10 16:49:42 发布