最新消息:码丁实验室,一站式儿童编程学习产品,寻地方代理合作共赢,微信联系:leon121393608。

信息学奥赛题库- 区间合并

C++ 少儿编程 1043浏览 0评论

码丁实验室,一站式儿童编程学习产品,寻地方代理合作共赢,微信联系:leon121393608。

【题目描述】

给定 $n$ 个闭区间 [$a_i; b_i$],其中$i=1,2,…,n$。任意两个相邻或相交的闭区间可以合并为一个闭区间。例如,[$1;2$] 和 [$2;3$] 可以合并为 [$1;3$],[$1;3$] 和 [$2;4$] 可以合并为 [$1;4$],但是[$1;2$] 和 [$3;4$] 不可以合并。

我们的任务是判断这些区间是否可以最终合并为一个闭区间,如果可以,将这个闭区间输出,否则输出$no$。

【输入】

第一行为一个整数$n$,$3 ≤ n ≤ 50000$。表示输入区间的数量。

之后$n$行,在第$i$行上($1 ≤ i ≤ n$),为两个整数 $a_i$ 和 $b_i$ ,整数之间用一个空格分隔,表示区间 [$a_i; b_i$](其中 $1 ≤ a_i ≤ b_i ≤ 10000$)。

【输出】

输出一行,如果这些区间最终可以合并为一个闭区间,输出这个闭区间的左右边界,用单个空格隔开;否则输出 $no$。

【输入样例】

5
5 6
1 5
10 10
6 9
8 10

【输出样例】

1 10

您必须 登录 才能发表评论!