用java实现
时间: 2023-09-30 07:06:04 浏览: 37
以下是Java代码实现:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[] radii = new int[n];
for (int i = 0; i < n; i++) {
radii[i] = scanner.nextInt();
}
// 记录未照明区间的起点和终点
int start = 0;
int end = 0;
// 遍历每个路灯,找到能够覆盖最远距离的路灯,并记录下它的位置
for (int i = 0; i < n; i++) {
// 能够覆盖当前位置的最远距离
int maxDist = i * 100 + radii[i];
// 如果当前位置已经在前一个未照明区间中,就直接跳过
if (i * 100 <= end) {
continue;
}
// 如果能够找到能够覆盖当前位置的路灯,就将当前位置移动到这个路灯的位置
if (maxDist >= end) {
start = i * 100 - radii[i];
end = maxDist;
}
// 否则,记录下当前位置是一个未照明区间的起点,并将当前位置移动到这个未照明区间的终点
else {
start = end;
end = i * 100 - radii[i];
}
}
// 如果当前位置没有到达最后一个路灯的位置,说明最后一个路灯后面还有未照明区间,也需要记录下来
if (end < (n - 1) * 100) {
start = end;
end = (n - 1) * 100;
}
// 计算所有未照明区间的长度和
int totalLength = end - start;
System.out.println(totalLength);
}
}
```
相关推荐
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)