问题 3242 --旅游(trip)

3242: 旅游(trip)

时间限制: 1 Sec  内存限制: 256 MB
提交: 5  解决: 0
[提交][状态][讨论版][命题人:]

题目描述

  alice 打算坐公交车从 A 市出发前往 m 公里外的 B 市,在 A 市和 B 市之间有一个 公交车总站,总站离 A 市有 d 公里,一共有 n 趟公交车,每辆车都从车站出发,第 i 辆 车行驶的最大距离是 xi ,公交车后可以按任意方向走,且最终不需要回到车站。 

alice 可以在任意位置换车,现在他想知道从 A 市去到 B 市最少需要多少辆车。 

输入

第一行输入 m, d, n 。 

第二行输入 n 个整数 x1, x2, ..., xn 。 

输出

输出需要的最小的公交车数量,如果不能到达,输出 0 。 

样例输入

42 23 6
20 25 14 27 30 7

样例输出

4

提示


【样例 1 解释】 



现假设 A 市的位置为 0 ,公交车站距离 A 市 23 公里,B 市距离 A 市 42 公里。 



选第 5 辆车,从车站去 alice 的位置再折返,会把人送到 7 公里的位置。 



选第 4 辆车,从车站去 alice 的位置再折返,会把人送到 18 公里的位置。 



选第 2 辆车,从车站去 alice 的位置再折返,会把人送到 33 公里的位置。



选第 1 辆车,从车站直接往 B 市方向走,顺路接上 alice ,可以把人送到 B 市。 



【数据范围】
数据约束和子任务 



对于 100% 的数据,有 1 ≤ d ≤ m ≤ 10^18
, 1 ≤ n ≤ 500000, 1 ≤ xi ≤ 10^18 。 


来源

[提交][状态]