#527. 【基础】小X与机器人

【基础】小X与机器人

说明

小X的老师很喜欢围棋。众所周知,围棋的棋盘有19行19列,共有361个交叉点。为方便起见,我们把这些行列按顺序编号为1~19,并用(x, y)表示第x列第y行的位置。例如下图中,A用(16,4)表示,B用(14, 3)表示。 小X在做一个机器人的项目,他正思考这样一个问题:如果一个小机器人从(x1,y1)(x_1, y_1)这个位置出发,沿直线移动到(x_2, y_2)这个位置,它一共经过了多少个交叉点? 注意起点和终点也算作经过,因此至少经过了2个交叉点。

输入格式

输入数据仅有一行包含4个用空格隔开的正整数,分别表示x1,y1,x2,y2x_1, y_1, x_2, y_2

输出格式

输出一行包含一个小于20的正整数,表示从(x1,y1)(x_1, y_1)沿直线移动到(x2,y2x_2, y_2)经过的交叉点的个数。

样例

4 4 4 16
13
1 1 19 19
19
1 1 7 5
3

样例3解释

经过了(1, 1), (4, 3), (7, 5)共3个交叉点,你在图上画条直线就能一目了然看出来。

数据范围

对于20%的数据,x1=x2 对于另外20%的数据,y1=y2 对于另外30%的数据,满足abs(x1-x2)=abs(y1-y2),它们是某个正方形的两个对角顶点 对于100%的数据,1\leqslant x1, y1, x2, y2\leqslant 19

来源

常州市2017“信息与未来”夏令营选拔赛