题解 | 一道GCD问题
一道GCD问题
https://www.nowcoder.com/practice/4bd77fafb14847b58ec78c8c1198b1d9
import sys
import math
#多维更相减损数
#x<y<z
#gcd(x,y,z)=gcd(x,y-x,z-y)
#所以题目gcd(a1+k,a2+k....)=gcd(a1+k,a2-a1.....)=g
#所以k=(g-a1%g)%g
data=list(sys.stdin.read().splitlines())
n=int(data[0])
lst=list(map(int,data[1].split()))
lst.sort()
g=0
for i in range(1,n):
g=math.gcd(g,lst[i]-lst[i-1])
print(g,(g-lst[0]%g)%g)

