题目描述
如果三个正整数A、B、C ,A² + B² = C² 则为勾股数,
如果ABC之间两两互质,即A与B,A与C,B与C均互质没有公约数,则称其为勾股数元组。
请求出给定 n ~ m 范围内所有的勾股数元组。
输入描述
起始范围
1 < n < 10000
n < m < 10000
输出描述
ABC保证A < B < C
输出格式A B C
多组勾股数元组,按照A B C升序的排序方式输出。
若给定范围内,找不到勾股数元组时,输出Na。
res=[]
def san(n,m):
for a in range(n,m+1):
for b in range(a,m+1):
for c in range(b,m+1):
if(c>m):
break
if(c*c==a*a+b*b and mat(a,b,c)):
# if(mat(a,b) or mat(b,k)):
res.append((a,b,c))
print(a,b,c)
def mat(c,d,f):
for i in range(2, min(c,d,f)**2):
if (c % i == 0 and d % i==0 and f % i==0):
return False
return True
if __name__ == '__main__':
n = int(input())
m = int(input())
mayy=san(n, m)