思路:枚举
因为只有三个区间,所以尝试三种组合。
取两个区间的交集即 L=max(l1,l2),R=min(r1,r2)
如果 L>R 则说明没有交集
否则有交集我们取交集中的最大值 R 即可。
题目内容
三位运动员各自选定了一条直线跑道上的连续训练区域。每位运动员的区域由起点和终点两个坐标表示(包含起点和终点)。教练希望挑选其中两位运动员,找到跑道上的一个坐标点,使得该点同时属于这两位运动员的训练区域。为了让训练强度最高,教练希望这个坐标点尽可能地大(即距离起点最远)。请你计算这个最大可能的坐标值。如果没有任何坐标同时属于任意两位运动员的区域,则无法安排,输出 -1。
所有给定坐标均为整数,范围在 1 到 10^9 之间,且对于每个区域,起点不会超过终点。
输入描述
输入共三行。第一行包含两个整数 l1,r1,表示第一位运动员训练区域的起点和终点。第二行包含两个整数 l2,r2,表示第二位运动员训练区域的起点和终点。第三行包含两个整数 l3,r3,表示第三位运动员训练区域的起点和终点。相邻整数之间使用空格分隔。
保证所有坐标均为整数,且对于每个区域,起点不超过终点,坐标值在 1 到 10^9 之间。
输出描述
输出一个整数,表示可选择的最大坐标点。若不存在满足条件的点,则输出 -1。
样例1
输入
1 6
4 9
5 10
输出
9
说明
计算两两区域交集的最大右端点。第一位运动员区域 [1,6],第二位 [4,9],交集为 [4,6],最大坐标点为 6。第二位与第三位 [4,9] 与 [5,10] 交集为 [5,9],最大坐标点为 9。第一位与第三位 [1,6] 与 [5,10] 交集为 [5,6],最大坐标点为 6。比较三个最大坐标点 6、9、6,得到最大值 9。因此教练可选择运动员 2 和 3,在坐标 9 处训练,输出 9。
样例2
输入
1 2
3 4
5 6
输出
-1
说明
三个区域分别为 [1,2]、[3,4]、[5,6],两两之间均无交集(任意区间最大端点小于下一区间起点)。任意两位运动员不存在共同训练坐标,故输出 -1。
样例3
输入
7 7
7 9
10 12
输出
7
说明
第一位运动员区域为点 [7,7],第二位为 [7,9],第三位为 [10,12]。第一位与第二位交集为点 [7,7],最大坐标 7;第一位与第三位、第二位与第三位均无交集。最大值为 7,输出 7。