AlgoMooc
你已开通华为OD训练营权益,还差最后一步——完成入营激活(兑换课程 + 加飞书 + 登记服务群),即可解锁全部课程与专属服务。去激活 →
← 返回题库

P3101. 路灯照明问题

中等通过率 60% · 提交 531 · 通过 320
贪心模拟

小慕负责维护一条笔直公路上的照明系统。这条公路上安装了N个路灯,从位置0开始安装,相邻路灯之间间距固定为100米。每个路灯都有自己的,小慕需要计算第一个路灯和最后一个路灯之间,所有无法被任何路灯照亮的区间总长度。 注意:除了第一个和最后一个路灯,第i个路灯的照明范围为[100*i-r, 100*i+r],即照明半径表示该路灯在其前后方向都能照亮。

提示:带虚线的词点一下有通俗解释。

输入描述

第一行为一个数N,表示路灯个数,1 <= N <= 100000 第二行为N个空格分隔的数,表示路灯的照明半径,1 <= 照明半径 <= 100000*100

输出描述

第一个路灯和最后一个路灯之间,无法照明的区间的长度和

示例

示例 1

输入

2
50 50

输出

0

说明:路灯1覆盖0-50,路灯2覆盖50-100,路灯1和路灯2之间(0米-100米)无未覆盖的区间。

示例 2

输入

4
50 70 20 70

输出

20

说明:路灯1 覆盖0-50,路灯2 覆盖30-170,路灯3覆盖180-220,路灯4覆盖230-370。没覆盖的区域是170-180和220-230,一共20米。

示例 3

输入

4
120 20 20 50

输出

90

示例 4

输入

4
120 20 20 200

输出

0

时间限制 1000 ms · 内存限制 128 MB

看不懂题目?点开图解
0 100 200 300 400 路灯1 路灯2 路灯3 路灯4 未覆盖 未覆盖 照明区域 未覆盖区域 路灯位置
写完代码点「提交」,将对全部测试用例判题。

向老师提问

针对「路灯照明问题」把疑问、代码和报错填清楚,老师收到后能更快、更准地回复你。