大佬们求助
查看原帖
大佬们求助
1389641
_Kenba_楼主2024/11/6 21:58
#include<bits/stdc++.h>
using namespace std;
int n;
int l,r;
struct st{
	int left;
	int right;
}h[50010];
bool cmp(st g,st k){
	if(g.right<k.right){
		return g.right<k.right;
	}
	if(g.right==k.right){
		return g.left<k.left;
	}
}
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>h[i].left>>h[i].right;
	}
	sort(h+1,h+n+1,cmp);
	l=h[1].left;
	r=h[1].right;
	for(int i=2;i<=n;i++){
		if(h[i].left>=h[i-1].left&&h[i].left<=h[i-1].right){
			r=h[i].right;
		}
		if(h[i].left<h[i-1].left){
			r=h[i].right;
			l=h[i].left;
		}
		if(h[i].left>h[i-1].right){
			cout<<l<<" "<<r<<endl;
			l=h[i].left;
			r=h[i].right;
		}
	}
	cout<<l<<" "<<r;
	return 0;
}
2024/11/6 21:58
加载中...