1 def gcd(a, b): 2 while a != 0: 3 a, b = b % a, a 4 5 return b
定理:两个整数的最大公约数等于其中较小的那个数和两数相除余数的最大公约数。最大公约数(Greatest Common Divisor)缩写为GCD。
gcd(a,b) = gcd(b,a mod b) (不妨设a>b 且r=a mod b ,r不为0)
def
gcd(a, b):
while
a !
=
0
:
a, b
=
b
%
a, a
return
b