#include <stdio.h>
#include <math.h>
//求n和m的最大公约数,那么这个公约数+1即为问题的解(为什么要加一呢?因为要算上原点,平移)
int gcd(int a,int b)
{
if(b==0)
return a;
else
return gcd(b,a%b);
}
int OnSegment(int x1,int y1,int x2,int y2)
{
return gcd(abs(x1-x2),abs(y1-y2))+1;
}
int main()
{
int ax,ay,bx,by,sum;
scanf("%d %d %d %d",&ax,&ay,&bx,&by);
if ((ax==bx)&&(ay==by))
{
printf("0\n");
}
else
{
sum=OnSegment(ax,ay,bx,by);
printf("%d\n",sum-2);
}
return 0;
}
xmu 1423.整点坐标
最新推荐文章于 2023-11-25 23:57:36 发布