Jonna 经常乘飞机去参加编程比赛。由于她住在赫尔辛基,她经常需要先前往某个大型机场枢纽(例如哥本哈根机场),然后转乘另一架航班。不幸的是,航班经常延误。在搭乘转机航班时,这尤其令人头疼。
碰巧,Jonna 刚刚降落在哥本哈根机场,正试图赶往希思罗机场的转机航班。由于她从赫尔辛基出发的航班延误了,她必须非常迅速地从到达登机口走到新的出发登机口。通常情况下,Jonna 的步行速度为每秒 $a$ 厘米。更糟糕的是,Jonna 有轻微的咖啡瘾,在不喝咖啡时走得非常缓慢。虽然咖啡本身并不会真正影响步行速度,但因没喝咖啡而产生的烦躁情绪甚至比错过航班的担忧更甚。当她喝咖啡时,她的速度会增加到每秒 $b$ 厘米。
Jonna 的到达登机口和出发登机口之间的距离为 $\ell$ 厘米,沿途有 $n$ 个小型咖啡推车,Jonna 可以在那里买到一杯咖啡。购买咖啡时(如今由于非接触式刷卡支付,这几乎是瞬间完成的),她首先需要等待 $t$ 秒,让咖啡冷却。在此期间,她将保持较慢的步行速度。在 $t$ 秒过去后,她立即开始喝咖啡。喝完咖啡需要整整 $r$ 秒(在此期间她以较快的速度行走)。咖啡喝完后,她将再次以较慢的速度行走。
请注意,Jonna 的左手提着一个包,所以她一次只能携带一杯咖啡。虽然有点浪费,但她可以扔掉一杯仍含有部分咖啡的杯子,去购买一杯全新的咖啡。
你能帮助 Jonna 确定在哪里购买咖啡,以便尽快到达她的出发登机口吗?
输入格式
输入的第一行包含五个整数 $\ell, a, b, t$ 和 $r$,其中:
- $1 \le \ell \le 10^{11}$ 是 Jonna 到达登机口和出发登机口之间的距离(单位:厘米)。
- $1 \le a < b \le 200$ 分别是 Jonna 在不喝咖啡和喝咖啡时的步行速度(单位:厘米/秒)。
- $0 \le t \le 300$ 是 Jonna 在可以喝咖啡前必须等待的秒数。
- $1 \le r \le 1200$ 是 Jonna 喝完一杯咖啡所需的秒数。
接下来的一行包含一个整数 $0 \le n \le 500\,000$,即两个登机口之间的咖啡推车数量。第三行也是最后一行输入包含 $n$ 个整数——咖啡推车的位置,按距离出发登机口的距离升序给出(即每个数字都在 $0$ 到 $\ell$ 之间,包含边界)。没有两个咖啡推车位于同一位置。
输出格式
首先,输出一行,包含 Jonna 应该购买咖啡的推车数量。接下来,输出一行,包含 Jonna 应该购买咖啡的推车索引。这些索引应在 $0$ 到 $n-1$ 之间,并对应于输入中咖啡推车的顺序。索引可以以任何顺序输出,但每个索引最多只能输出一次。
如果所提出的咖啡购买计划所花费的时间与最优时间相比,绝对误差或相对误差不超过 $10^{-9}$,则您的答案将被接受。
图 A.1:样例输入 1 的说明及一种可能的解决方案。咖啡店用三角形标记。Jonna 因咖啡影响而走得较快的部分用虚线标记。第一杯咖啡在距离起点 11 000 厘米处冷却,第二杯在距离起点 61 000 厘米处冷却。
样例
输入格式 1
100000 100 138 60 300 5 5000 20000 50000 55000 75000
输出格式 1
2 0 3
输入格式 2
100000 78 86 9 560 4 13505 69705 87448 92090
输出格式 2
2 0 1