PTA习题-python 7-1 互质数

Sg认识到互质数很有用。若两个正整数的最大公约数为1,则它们是互质数。要求编写函数判断两个整数是否互质数。

输入格式:

首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试先输入1个整数n(1≤n≤100),再输入n行,每行有一对整数a、b(0<a,b<109)。

输出格式:

对于每组测试数据,输出有多少对互质数。

输入样例:

1
3
3 11
5 11
10 12

输出样例:

2

代码实现

# def is_huzhi(a, b):   # 运行超时,太慢了
#     a, b = min(a, b), max(a, b)
#     for i in range(a, 0, -1):  # a~1
#         if b % i == 0 and a % i == 0:
#             return i

def is_huzhi(a, b):# 辗转相除法
    if a < b:
        a, b = b, a
    while a % b != 0:
        yu = a % b
        a = b
        b = yu
    return b==1

t = int(input())
for i in range(t):
    n = int(input())
    count = 0
    for j in range(n):
        a, b = map(int,input().split())
        if is_huzhi(a,b) == 1:
            count += 1
    print(count)

 提交结果

猜你喜欢

转载自blog.csdn.net/weixin_58707437/article/details/128081373