Python中求两点间直线上积分坐标个数的程序
假设,我们已经获得了两个点(p1,q1)和(p2,q2)。如果在两个给定点之间画一条直线,我们必须找出积分坐标的数量(x和y值都是整数)。返回点数。
所以,如果输入像p1=3,q1=3,p2=6,q2=6,那么输出将是2如果我们画直线,我们会看到点(5,5)和(6,6)位于直线上。
示例
让我们看看以下实现以获得更好的理解-
def gcd_find(x,y): if y == 0: return x return gcd_find(y,x % y) def solve(p1,q1,p2,q2): return gcd_find(abs(p2 - p1),abs(q2 - q1)) - 1 print(solve(3,3,6,6))
输入
3,3,6,6输出结果
2