#abc184c. [abc184_c]Super Ryuma

[abc184_c]Super Ryuma

题目描述

存在一个无限的二维网格,我们有一个叫做 Super Ryuma 的棋子位于坐标 (r1,c1)(r_1, c_1)(Ryu 意为龙,Ma 意为马。) 在一步移动中,棋子可以移到下面显示的其中一个方格:

更正式地说,当 Super Ryuma 位于坐标 (a,b)(a, b) 时,它可以移到坐标 (c,d)(c, d),满足以下至少一个条件:

  • a+b=c+da + b = c + d
  • ab=cda - b = c - d
  • ac+bdle3|a - c| + |b - d| \\le 3

求出棋子从 (r1,c1)(r_1, c_1) 移动到 (r2,c2)(r_2, c_2) 所需的最小步数。

约束条件

  • 输入中的所有值均为整数。
  • 1r1,c1,r2,c21091 \le r_1, c_1, r_2, c_2 \le 10^9

输入

输入以以下格式从标准输入给出:

r1r_1 c1c_1 r2r_2 c2c_2

输出

打印出棋子从 (r1,c1)(r_1, c_1) 移动到 (r2,c2)(r_2, c_2) 所需的最小步数。


示例输入 1

1 1
5 6

示例输出 1

2

我们需要两步移动 - 例如,(1,1)(5,5)(5,6)(1, 1) \rightarrow (5, 5) \rightarrow (5, 6)


示例输入 2

1 1
1 200001

示例输出 2

2

我们需要两步移动 - 例如,$(1, 1) \rightarrow (100001, 100001) \rightarrow (1, 200001)$。


示例输入 3

2 3
998244353 998244853

示例输出 3

3

我们需要三步移动 - 例如,$(2, 3) \rightarrow (3, 3) \rightarrow (-247, 253) \rightarrow (998244353, 998244853)$。


示例输入 4

1 1
1 1

示例输出 4

0