RE求助!
查看原帖
RE求助!
764989
Darth_Vader1楼主2023/4/11 21:41
#include<bits/stdc++.h>
using namespace std;
stack<int> a[10005];
int main(){
//	freopen(".in","r",stdin);
//	freopen(".out","w",stdout);
	int n,p,ans=0,mx=INT_MIN;
	cin>>n>>p;
	for(int i=1;i<=n;i++){
		int b,c;
		cin>>b>>c;
		mx=max(mx,b);
		if(!a[b].empty()){
			while(a[b].top()>c&&!a[b].empty()){
				ans++;
				a[b].pop();
			}
			ans++;
			a[b].push(c);
		}
		ans++;
		a[b].push(c);
	}
	for(int i=1;i<=mx;i++){
		if(a[i].empty())continue;
		while(!a[i].empty()){
			ans++;
			a[i].pop();
		}
	}
	cout<<ans;
return 0;
}

2023/4/11 21:41
加载中...