#B13. 移动棋子

移动棋子

题目描述

一维的棋盘上有无限多个格子,每个格子都有一个编号,最中间的格子编号为 0,00,0 号。格子向右依次编号为 1,2,3,...1,2,3,... ,向左依次编号为 −1,−2,−3,...-1,-2,-3,... 。 小明的目标是要将一枚棋子从 xx 号格子移动到 yy 号格子。 每一次操作有两种选择: 操作 11 :向右移动 11 个格子。 操作 22 :从当前棋子所在的 aa 号格子,直接跳到 −a-a 号格子(如:可以从 66 直接跳到 −6-6 ,也可以从 −6-6 直接跳到 66 )。 可以证明,无论整数 xx 和 yy 的值是多少,目标总是可以实现的。 请你设计程序,帮小明计算把棋子从 xx 号格子移动到 yy 号格子需要的最少操作次数。

输入描述

一行,两个整数 xx 和 yy ,表示要将棋子从 xx 号格子移动到 yy 号格子。

输出描述

一个整数,表示小明把棋子从 xx 号格子移动到 yy 号格子需要的最少操作次数。

样例输入1

10 20

样例输出1

10

样例说明1

需要进行 1010 次操作一。

样例输入2

10 -10

样例输出2

1

样例说明2

需要进行 11 次操作二。

样例输入3

-10 -20

样例输出3

12

样例说明3

先进行 11 次操作 22 ,然后进行 1010 次操作 11 ,最后进行 11 次操作 22 。

数据范围

  • 30%30\% 的数据: ∣x∣<100,∣y∣<100|x|<100,|y|<100 。
  • 100%100\%的数据: x,yx,y 都为整数; ∣x∣≤109,∣y∣≤109|x| \leq 10^9,|y| \leq 10^9 ; x,yx,y 不相等。
  • 有 40%40\% 的数据, ∣x∣>∣y∣|x|>|y| 。
  • 有 40%40\% 的数据, ∣x∣<∣y∣|x|<|y| 。
  • 有 20%20\% 的数据, ∣x∣=∣y∣|x|=|y| 。