你好的,代码供参考:
a =[]
n = int(input())
while n>0:
n-=1
a.append( list(map(int, input().split())))
a0 = []
for i in range(len(a)):
b = a[i]
c = min(b)
q = 1
for j in range(1,c+1):
flag = 1
for k in range(len(b)):
if(b[k]%j!=0):
flag = 0
break
if(flag==1 and j>q):
q = j
print(q)
结果示例:
2
24 48 32 16 96
24 45 7 8
8
1
有帮助还请题主给个采纳支持一下哟,谢谢啦
def gcd(*args):
v_min = min(args)
i = 2
while i <= pow(v_min, 0.5):
new_args = list()
for item in args:
if item % i == 0:
new_args.append(item//i)
else:
i += 1
break
else:
return i * gcd(*new_args)
return 1
gcd(24,48,32,16,96)
8
gcd(24,25,7,8)
1