时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
有

个人排队,

号排在

号前面,

号排在

号前面,...,以此类推

号排在

号前面。在这个过程中,偶尔老师会把某个人叫走,叫走之后这个人就离开了队伍,假设本来

排在

前面,

排在

前面,

被叫走后

就排在了

前面。老师偶尔也会感到疑问,她想知道此时排在

号前面的同学是几号呢?
已知老师一共会有

次操作,每次会执行下面的一种:

把

叫走。

求排在

前面的是谁。
输入描述:
第一行输入两个正整数
。
表示排队人数,
表示老师的操作次数。
接下来
行,每行包含2个整数,表示一个操作,具体如下:
1 x :把
叫走,保证此时
一定在队伍里
2 x :输出排在
前面的人的编号,保证此时
一定在队伍里,如果没有人排在
前面,输出
。
)
输出描述:
输出包含若干行整数,即为所有操作 2 的结果。
备注:
本题读入量较大,请使用合理高效的读入方法。
以下提供一个c++的t组输出a+b的快读模板。
#include<bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
int t,a,b;
cin>>t;
while(t--){
cin>>a>>b;
cout<<a+b<<'\n';
}
return 0;
}