#SLT06A. 2026年S组模拟赛10连测第6场-T1 程老师的走廊灯
2026年S组模拟赛10连测第6场-T1 程老师的走廊灯
| 项目 | 内容 |
|---|---|
| 输入文件名 | corr.in |
| 输出文件名 | corr.out |
| 可执行文件名 | corr |
| 每个测试点时限 | 1.0 秒 |
| 内存限制 | 512 MiB |
| 测试点数目 | 20 |
| 是否等分 | 是 |
结果比较方式为全文比较(过滤行末空格及文末换行)。
题目描述
程老师负责教学楼东侧一段笔直走廊的照明检修。后勤处在走廊里架了一条水平坐标轴,走廊从位置 一直延伸到位置 。仓库中存着一批灯具,共 盏,第 盏已经架设在位置 处,它的额定照射半径是 :这盏灯点亮之后,地面上从 到 的这一整段走廊被它照亮,落在这一段之外的地方它一点也照不到。这批灯的额定半径有大有小,同一个半径值也可能出现在好几盏灯上。
灯只有点亮与不点亮两种状态。检修单上的验收是在一次送电中完成的:被选中的灯整段同时亮起,不存在调低亮度、只照半边或者一闪一闪的做法,选中一盏灯,就把它额定半径对应的那一整段算作照亮。
本次验收的判据只有一条:从位置 到位置 的走廊上每一处都至少被一盏点亮的灯照到。这里的每一处包含位置不是整数的点——走廊上任何一个位置,只要它不在任何一盏点亮的灯的照亮范围之内,就算没照亮;而两盏点亮的灯的照亮范围恰好只在某一处相接时,相接的这一处同样算已经照亮。
程老师想知道:要让整段走廊每一处都亮起来,最少需要点亮多少盏灯;如果现有的这批灯不管怎么挑都做不到,就在验收单上记一次照明不达标,按约定输出 。
输入格式
从文件 corr.in 中读入数据。
- 第一行两个整数 ,表示仓库中的灯数与走廊的长度;
- 接下来 行,每行两个整数 ,依次表示第 盏灯架设的位置与额定照射半径。
输出格式
输出到文件 corr.out 中。
输出一行一个整数,表示让整段走廊每一处都亮起来最少需要点亮的灯数;若无论如何都做不到,输出 。
样例
4 10
1 2
4 2
7 4
9 1
2
样例 1 解释
四盏灯点亮后各自照亮的走廊分别是:第 盏照 ,第 盏照 ,第 盏照 ,第 盏照 。
位置 落在四段里只有第 盏的范围之内,所以第 盏必须点亮,它把走廊照到位置 。位置 往右,还接得上的有第 盏(照到 )和第 盏(照到 ):只点第 、第 两盏时,走廊只连到位置 ,位置 之后没有任何一盏点亮的灯照得到,照不满;换成第 、第 两盏,照亮范围从 一路连到 , 已经全部照到。只点一盏也照不满整条走廊,因此最少是 盏。
2 10
1 1
6 1
-1
样例 2 解释
第 盏照 ,第 盏照 。两盏全部点亮之后,位置 与位置 之间的走廊仍然没有任何一盏灯照得到;由于一共只有这两盏,任何一种点法都无法让整段走廊亮起来,因此输出 。
数据范围
对于所有测试数据,保证:
- ,;
- ,。
各测试点的约束如下:
| 测试点 | 特殊性质 | |
|---|---|---|
| 无 | ||
| A | ||
| B |
- 特殊性质 A:所有 相等。
- 特殊性质 B: 按递增顺序给出。
- ID
- 3789
- 类型
- 传统题
- Time Limit
- 1000ms
- Memory Limit
- 512MiB
- 上传者