U236112 【贪心】区间线段覆盖问题

题目背景

问题描述:给定一个长度为m的区间,再给出n条线段的起点和终点(注意这里是闭区间),求最少使用多少条线段可以将整个区间完全覆盖 样例: 区间长度8,可选的覆盖线段[2,6],[1,4],[3,6],[3,7],[6,8],[2,4],[3,5] 解题过程: 1. 将每一个区间按照左端点递增顺序排列,拍完序后为[1,4],[2,4],[2,6],[3,5],[3,6],[3,7],[6,8] 2. 设置一个变量表示已经覆盖到的区域。再剩下的线段中找出所有左端点小于等于当前已经覆盖到的区域的右端点的线段中,右端点最大的线段在加入,直到已经覆盖全部的区域 3. 过程: 假设第一步加入[1,4],那么下一步能够选择的有[2,6],[3,5],[3,6],[3,7],由于7最大,所以下一步选择[3,7],最后一步只能选择[6,8],这个时候刚好达到了8退出,所选区间为3

题目描述

数轴上有$n$个闭区间$[a_i,b_i]$,选择尽量少的区间覆盖一条指定线段$[s,t]$.

输入格式

第一行是三个整数$n,s,t$,代表区间数和需要覆盖的区间的左右端点 接下来$n$行,每行是两个整数$a_i,b_i$表示每个区间的左右端点

输出格式

一个整数, 覆盖区间$[s,t]$所需的最少区间数量。 如果无法覆盖,输出"impossible"。

说明/提示

$1\le n\le 200000$,$1\le s\lt t \le 10^9$,$1\le a_i\lt b_i \le 10^9$