求解学校题目?
  • 板块学术版
  • 楼主五年长久
  • 当前回复5
  • 已保存回复5
  • 发布时间2022/3/18 17:05
  • 上次更新2023/10/28 06:19:02
查看原帖
求解学校题目?
444078
五年长久楼主2022/3/18 17:05
源程序名称:bridge.cpp
输入文件:bridge.in
输出文件:bridge.out

问题描述:
桥的长度为L,现在要给桥上方搭上防雨棚。防雨布是量产的,长度相同,每个长度都为W。
桥上的每个位置以它距离桥最左边的距离决定。比如说,某个防雨布最左边在x,(0≤x≤L-W)就是说距离桥的最左边距离为x,它覆盖的范围是[x,x+W](包含两个端点)。 
已知桥上已有N个防雨布,第i个防雨布最左边的位置为a_i.
还需要在桥上放多少防雨布,才能把桥全部覆盖?也就是说,对于桥上任意位置,上面都有防雨布?(包括两个端点,0和L)


数据范围:
所有的输入都是整数
1≤N≤〖10〗^5 
1≤W≤L≤〖10〗^18 
0≤a_1<a_2<⋯<a_N≤L-W 


输入:
N	L	W
a_1  ...a_N 

输出:
还需要多少防雨布?

样例输入1:
2	10	3	
3	5
样例输出1:
2

样例解释:
在位置0和7放置防雨布,所以还需要2个


样例输入2:
5 	10 	3
0 	1 	4 	6 	7

11111111100

样例输出2:
0

样例输入3:
12 	1000000000 	5
18501490 	45193578 51176297 126259763 132941437 180230259 401450156	 585843095	 614520250	 622477699 657221699 896711402

样例输出3:
199999992

求解!拜托了!

2022/3/18 17:05
加载中...