题目描述
一家收容所只收猫和狗。每只宠物入库时获得一个互不相同的编号,同一个品种的宠物排成一条队——全所共两条队:猫队、狗队。领养规则有两种:
2:领养最早入库的宠物——不管品种,谁入库最早领谁;3 s:领养最早入库的指定品种宠物( 猫、 狗)。
对应队列空时无法领养,输出 。用两个 queue 维护两条队。
输入格式
第一行一个整数 (),操作数。
接下来 行,每行一条操作,格式为以下之一:
1 s x:编号 的宠物入库, 是猫、 是狗(,所有 互不相同);2:领养最早入库的宠物(不分品种);3 s:领养最早入库的指定品种宠物, 是猫、 是狗。
输出格式
对每条领养操作(2 或 3 s),输出一行一个整数:被领养宠物的编号;对应队列为空时输出 。
样例
输入:
6
1 1 20
1 0 10
2
3 0
3 1
2
输出:
20
10
-1
-1
狗 20 比猫 10 早入库,「领养最早」先领走 20;随后按品种领猫领到 10,再领狗时狗队已空。
数据范围
,。提示:「整体最早」要在两条队之间比较入库先后——比较编号大小可不算数;可以把入库次序和编号一起编进一个数存进队列。