小X的老师很喜欢围棋。众所周知,围棋的棋盘有 19 行 19 列,共有 361 个交叉点。
为方便起见,我们把这些行列按顺序编号为 1 \sim 19 ,并用 (x, y) 表示第 x 列第 y 行的位置。例如下图中,A 用 (16,4) 表示,B 用 (14, 3) 表示。
小X在做一个机器人的项目,他正思考这样一个问题:如果一个小机器人从 (x_1, y_1) 这个位置出发,沿直线移动到 (x_2, y_2) 这个位置,它一共经过了多少个交叉点?
注意起点和终点也算作经过,因此至少经过了 2 个交叉点。
输入数据仅有一行包含 4 个用空格隔开的正整数,分别表示 x_1, y_1, x_2, y_2。
输出一行包含一个小于 20 的正整数,表示从 (x_1, y_1) 沿直线移动到 (x_2, y_2) 经过的交叉点的个数。
4 4 4 16
13
1 1 19 19
19
1 1 7 5
3
经过了 (1, 1), (4, 3), (7, 5) 共 3 个交叉点,你在图上画条直线就能一目了然看出来。
对于 20\% 的数据,x_1=x_2。
对于另外 20\% 的数据,y_1=y_2。
对于另外 30\% 的数据,满足 abs(x_1-x_2)=abs(y_1-y_2) ,它们是某个正方形的两个对角顶点。
对于 100\% 的数据,1 \le x_1, y_1, x_2, y_2 \le 19。
常州市2017“信息与未来”夏令营选拔赛
市赛