atcoder#AGC022D. [AGC022D] Shopping
[AGC022D] Shopping
分数: 分
问题描述
Yui 喜欢购物。她住在 Yamaboshi 城市,城市可以被建模为一条非常长的数轴。Yui 的家在坐标 处。
城市中有 个购物中心,分别位于坐标 。此外,还有 个火车站,分别位于坐标 、 和每个购物中心的位置。
在时间 时,火车从位置 向正方向出发。火车以每秒 单位的速度行驶。在时间 时,火车到达最后一个站,即坐标 处的站。火车立即以相同的速度向相反方向行驶。在时间 时,火车回到坐标 ,并立即向相反方向行驶。这个过程无限重复。
当火车到达 Yui 所在的车站时,Yui 可以立即上下车。在时间 时,Yui 在坐标 的车站。
Yui 想要去所有 个购物中心购物,顺序可以随意,并在完成购物后回到家。她在坐标 的购物中心需要购物 秒。她必须在开始去下一个购物中心之前完成在当前购物中心的购物。Yui 可以在到达购物中心的车站时立即开始购物,并在完成购物后立即登车。
Yui 想要尽量减少完成购物所需的总时间。你能帮助她确定完成所有购物所需的最少时间吗?
约束条件
- 输入中的所有值均为整数。
输入
输入通过标准输入提供,格式如下:
输出
打印完成所有 个购物中心购物并回到家所需的最少时间(以秒为单位)。如果任务无法完成,输出 -1
。
2 10
5 8
10 4
40
以下是一种可能的购物方式:
- 乘坐火车前往坐标 处的车站。她在时间 到达坐标 。
- 在坐标 的购物中心购物。她在时间 完成购物。
- 火车在时间 到达坐标 。她登上火车,火车此时正向负方向行驶。
- 她在时间 到达坐标 。她在时间 完成购物。
- 火车在时间 到达坐标 。她登上火车,火车此时正向正方向行驶。
- 她在时间 到达坐标 。火车立即向负方向行驶。
- 她在时间 到达坐标 ,结束旅行。
2 10
5 8
10 5
60
5 100
10 19 28 47 68
200 200 200 200 200
1200
8 1000000000
2018 123456 1719128 1929183 9129198 10100101 77777777 120182018
99999999 1000000000 1000000000 11291341 1 200 1 123812831
14000000000
注意溢出问题。