import time
N = int(input()) #Najdłuższa możliwa przekątna
N_do_2 = N*N
# s=time.time()
# kwadraty = {f"{a},{b},{h}": a**2+b**2+h**2 for a in range(1, N+1)
# for b in range(a, N+1)
# for h in range(1, N+1)}
# wartosci = set(kwadraty.values())
#
# k = time.time()
# print(k-s)
C = [(a**2+b**2) for a in range(1,N+1) for b in range(a,N+1)]
licznik_prostopadloscianow = 0
# for a in range(1,N):
# for b in range(a,N):
# for h in range(1,N):
# kwadrat = a**2+b**2+h**2
# if kwadrat in wartosci:
# licznik_prostopadloscianow+=1
for c in C:
for h in range(1,N+1):
number = c+h*h
if (number**0.5).is_integer() and number <= N_do_2:
licznik_prostopadloscianow += 1
print(licznik_prostopadloscianow)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | import time N = int(input()) #Najdłuższa możliwa przekątna N_do_2 = N*N # s=time.time() # kwadraty = {f"{a},{b},{h}": a**2+b**2+h**2 for a in range(1, N+1) # for b in range(a, N+1) # for h in range(1, N+1)} # wartosci = set(kwadraty.values()) # # k = time.time() # print(k-s) C = [(a**2+b**2) for a in range(1,N+1) for b in range(a,N+1)] licznik_prostopadloscianow = 0 # for a in range(1,N): # for b in range(a,N): # for h in range(1,N): # kwadrat = a**2+b**2+h**2 # if kwadrat in wartosci: # licznik_prostopadloscianow+=1 for c in C: for h in range(1,N+1): number = c+h*h if (number**0.5).is_integer() and number <= N_do_2: licznik_prostopadloscianow += 1 print(licznik_prostopadloscianow) |
English