侧边栏壁纸
  • 累计撰写 192 篇文章
  • 累计创建 2 个标签
  • 累计收到 87 条评论

【题解】P431 【例75.2】 区间合并

Allen Best
2023-07-12 / 0 评论 / 1 点赞 / 29 阅读 / 476 字
温馨提示:
本文最后更新于 2023-07-12,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
#include<bits/stdc++.h>
#define N 50005
using namespace std;
struct node{
	int x,y;
}a[N];
bool cmp(node a,node b){
	if (a.x==b.x) return a.y>b.y;
	else return a.x<b.x;
}
int n,ansx,ansy;
int main(){
	cin>>n;
	for(int i=1;i<=n;i++)
		cin>>a[i].x>>a[i].y;
	sort(a+1,a+n+1,cmp);
	ansx=a[1].x;
	ansy=a[1].y;
	for(int i=2;i<=n;i++){
		if(a[i].x<=ansy) ansy=max(ansy,a[i].y);
		else if(a[i].x>ansy){
			cout<<"no";
			return 0;
		}
	}
	cout<<ansx<<" "<<ansy;
	return 0;
}
0

评论区