λ¬Έμ
λ°±μ€ μ¨λΌμΈ μ μ§ - 9094λ²
νμ΄ κ³Όμ
κ°λ₯ν λͺ¨λ μ‘°ν©μ λ§λ€μ΄λ³Έ λ€μ μ£Όμ΄μ§ 쑰건μ λ§μ‘±νλ μ‘°ν©μ κ°μλ₯Ό ꡬνλ λ¬Έμ μ
λλ€.
μ²μμ a μ b μ μ‘°ν©μ κ°μκ° 10000κ°λ₯Ό λμ§ μκΈ° λλ¬Έμ λ¨μ μ‘°ν©κ°μλ₯Ό λ§λ€μ΄μ μλνλλ°
ν
μ€νΈ μΌμ΄μ€μ κ°μ T
λ₯Ό κ³ λ €νμ§ λͺ»ν΄μ μκ° μ΄κ³Όκ° λ°μνμ΅λλ€.
μ΄λ₯Ό μν΄ a, b, m
μ μνλ³μλ‘ νλ λ©λͺ¨μ΄μ μ΄μ
μ μ μ©ν΄μ μ€λ³΅λ κ³μ°μ μ€μ΄λ λ°©μμΌλ‘ ν΄κ²°ν μ μμ΅λλ€.
μ½λ
import sys
def solution():
ret = 0
for a in range(1, n):
for b in range(a + 1, n):
if memo[a][b][m] != -1:
ret += memo[a][b][m]
continue
numerator, denominator = (a**2 + b**2 + m), (a * b)
if numerator % denominator == 0:
ret += 1
memo[a][b][m] = 1
else:
memo[a][b][m] = 0
return ret
if __name__ == '__main__':
T = int(input())
memo = [[[-1 for _ in range(101)] for _ in range(101)] for _ in range(101)]
for _ in range(T):
n, m = list(map(int, sys.stdin.readline().split()))
answer = solution()
print(answer)
λ°μν
'π algorithm > boj' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
BOJ 5076 - Web Pages (0) | 2021.07.19 |
---|---|
BOJ 1920 - μ μ°ΎκΈ° (0) | 2021.07.05 |
BOJ 13700 - μμ λ²μ£ (0) | 2021.06.29 |
BOJ 14950 - μ 볡μ (0) | 2021.06.25 |
BOJ 1197 - μ΅μ μ€ν¨λ νΈλ¦¬ (0) | 2021.06.18 |
π¬ λκΈ