結果
| 問題 |
No.1318 ABCD quadruplets
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2020-07-24 23:42:16 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 1,404 ms / 2,000 ms |
| コード長 | 906 bytes |
| コンパイル時間 | 268 ms |
| コンパイル使用メモリ | 82,384 KB |
| 実行使用メモリ | 80,304 KB |
| 最終ジャッジ日時 | 2024-06-25 22:56:51 |
| 合計ジャッジ時間 | 12,978 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 30 |
ソースコード
n, m = map(int, input().split())
ans = [0]*(n+1)
for a in range(m + 1):
for b in range(a,m + 1):
if a * a + b * b + (a + b)*(a+b)> 2*n:
break
for c in range(b,m + 1):
if a * a + b * b + c * c + (a + b + c) * (a + b + c) > 2*n:
break
for d in range(c,m + 1):
s = a*a + b*b + c*c + d*d + (a+b+c+d)**2
if s > 2 * n:
break
if s % 2 == 1: continue
if a == b == c == d:
ans[s // 2] += 1
elif a == b == c or b == c == d:
ans[s // 2] += 4
elif a == b and c == d:
ans[s // 2] += 6
elif a == b or b == c or c == d:
ans[s // 2] += 12
else:
ans[s // 2] += 24
print("\n".join(str(i) for i in ans))