20Pts求救
查看原帖
20Pts求救
917683
rnf5114楼主2023/5/14 19:51
#include <iostream>
using namespace std;
long long step,wei1,t,n,m,v[200010]={},flag;
int main(){
	cin>>t;
	for(int i=1;i<=t;i++){
		cin>>n>>m;
		flag=0;
		wei1=0;
		for(int j=1;j<=n;j++){
			v[j]=0;
		}
		for(int j=1;j<=m;j++){
			int a,b;
			cin>>a>>b;
			if(flag==1){
				continue;
			}
			if(a==1){
				if(flag==2&&b==wei1){
					cout<<j<<endl;
					flag=1;
				}
				step++;
				v[b]=1;
				for(int k=1;k<=n;k++){
					if(v[k]==0){
						break;
					}
					cout<<step;
					flag=1;
				}
			}
			else{
				if(v[b]){
					cout<<j<<endl;
					flag=1;
				}
				else if(flag==2&&wei1!=b){
					cout<<j<<endl;
					flag=1;
				}
				else if(v[b]==0){
					flag=2;
					wei1=b;
				}
			}
		}
		if(flag==2){
			cout<<-1<<endl;
		}
	}
	return 0;
}
2023/5/14 19:51
加载中...