atcoder#ABC270B. [ABC270B] Hammer
[ABC270B] Hammer
题目描述
数直線の原点に高橋君がいます。高橋君は座標 にあるゴールに移動しようとしています。
座標 には壁があり、最初、高橋君は壁を超えて移動することができません。
座標 にあるハンマーを拾った後でなら、壁を破壊して通過できるようになります。
高橋君がゴールに到達することが可能か判定し、可能であれば移動距離の最小値を求めてください。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
高橋君がゴールに到達することが可能であれば、移動距離の最小値を出力せよ。不可能であれば、かわりに -1
と出力せよ。
题目大意
高桥君在一条数轴的原点,想去坐标为 处。
但坐标为 处有墙,无法通过。
坐标为 处有一把锤子,可以用它打碎墙以通过。
问:给出 ,则高桥君要达成目的所需的最短移动距离是多少?如果不能到达,输出 。
保证: ,且 。 互不相同且均为整数。
10 -10 1
10
20 10 -10
40
100 1 1000
-1
提示
制約
- は相異なり、いずれも でない
- 入力に含まれる値は全て整数である
Sample Explanation 1
高橋君はまっすぐゴールに向かうことができます。
Sample Explanation 2
ゴールは壁の向こう側にあります。まずハンマーを拾い、壁を壊すことでゴールに到達することができます。