atcoder#AGC008A. [AGC008A] Simple Calculator

[AGC008A] Simple Calculator

题目描述

すぬけ君は電卓を持っています。 この電卓にはディスプレイと 2 2 個のボタンが付いています。

最初、ディスプレイの値は整数 x x です。 すぬけ君の目標は、ディスプレイの値を整数 y y にすることです。 そのために、すぬけ君は次の 2 2 個のボタンを好きな順番で何回か押すことができます。

  • ボタン A : ディスプレイの値を 1 1 増やす。
  • ボタン B : ディスプレイの値の符号を反転する。

目標を達成するためにすぬけ君がボタンを押す回数の最小値を求めてください。 なお、整数 x x , y y の値によらず、必ず目標を達成できることが示せます。

输入格式

入力は以下の形式で標準入力から与えられる。

x x y y

输出格式

目標を達成するためにすぬけ君がボタンを押す回数の最小値を出力せよ。

题目大意

Snuke君有一个数字xx,想要通过以下两个操作将数字变成yy:

  1. xx变成x+1x+1

  2. xx变成x-x

问Snuke君至少要操作多少次。

10 20
10
10 -10
1
-10 -20
12

提示

制約

  • x x , y y は整数である。
  • x, y < = 109 |x|,\ |y|\ <\ =\ 10^9
  • x x , y y は相異なる。

Sample Explanation 1

ボタン A を 10 10 回押せばよいです。

Sample Explanation 2

ボタン B を 1 1 回押せばよいです。

Sample Explanation 3

次の順でボタンを押せばよいです。 - ボタン B を 1 1 回押す。 - ボタン A を 10 10 回押す。 - ボタン B を 1 1 回押す。