#M250934. 汽车旅行

汽车旅行

题目描述

Z\tt Z驾驶一辆汽车正在坐标轴上行驶。它需要完成 kk 次旅行,其中:

  • 一次旅行是指从 x=0x=0x=ax=a 的单程,或者从 x=ax=ax=0x=0 的单程。
  • 第一次旅行从 x=0x=0 出发,前往 x=ax=a
  • 完成一次旅行后,立即掉头开始下一次旅行(即从 aa 返回 00,再从 00 前往 aa,如此反复)。

汽车油箱最多可容纳 bb 升汽油。每行驶一单位距离需要消耗一升汽油。

开始时(第一次旅行出发时),油箱是满的(有 bb 升油)。

在点 x=fx=f 处有一个加油站(0<f<a0 < f < a),这是路线上唯一的加油站。当汽车经过加油站时(无论方向),它可以选择停下来将油箱加满。

你的任务是:计算完成 kk 次旅行所需的最少加油次数。如果无法完成,输出 -1

输入格式

输入仅一行,四个整数:$a、b、f、k(0 < f < a \le 10^6, 1 \le b \le 10^9, 1 \le k \le 10^4)$。

输出格式

一行一个整数,表示完成 kk 次旅行所需的最少加油次数。如果无法完成 kk 次旅行,输出 -1

输入输出样例

10 10 5 20
20

样例 #1\tt \#1说明

  • 油箱容量为 1010,但完成 2020 次旅行需要加油 2020 次。
15 65 5 50
12

样例 #2\tt \#2说明

  • 油箱容量为 6565,只需要加油 1212 次即可完成 5050 次旅行。
10 4 6 10
-1

样例 #3\tt \#3说明

  • 油箱容量为 44,无法完成 1010 次旅行(因为某段路程油不够且无法通过加油解决)。