Problem5482--座位预约管理系统

5482: 座位预约管理系统

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

请你设计一个管理 $n$ 个座位预约的系统,座位编号从 $1$ 到 $n$。
该系统有以下几个操作:
  • SeatManager 操作。该操作带一个正整数参数 $n (1 \leq n \leq 10^5)$,该操作无输出。初始化一个座位预约系统,它管理从 1 到 n 编号的 n 个座位,所有座位初始都是可预约的。例如:SeatManager $5$,表示目前我们有以下编号的座位可以预约:$\{1, \ 2,\ 3,\ 4,\ 5\}$。
  • reserve 操作。该操作不带任何参数,该操作输出可以预约座位的 最小编号 ,此座位变为不可预约。保证至少存在一个可以预约的座位。
  • unreserve 操作。该操作带一个正整数参数 $seatNumber\ (1 \leq seatNumber \leq n)$,将给定编号 $seatNumber$ 对应的座位变成可以预约。该操作无输出。保证 $seatNumber$ 在调用函数前都是被预约状态。
  • query 操作。该操作不带任何参数,输出当前座位预约系统可以预约座位总数。
对 reserve 和 unreserve 的调用 总共 不超过 $10^5$ 次。

Input

任意次操作。具体操作描述参考题目描述。

Output

任意次操作输出结果,每次操作的输出参考题目描述。

Sample 1 Input

SeatManager 5
query
reserve
reserve
query
unreserve 2
query
reserve
reserve
reserve
reserve
unreserve 5

Sample 1 Output

5
3
1
4
2
2
3
4
5

Source/Category

3.5.priority_queue