結果
問題 | No.2509 Beam Shateki |
ユーザー |
|
提出日時 | 2023-12-29 21:16:57 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 134 ms / 2,000 ms |
コード長 | 1,648 bytes |
コンパイル時間 | 1,464 ms |
コンパイル使用メモリ | 82,436 KB |
実行使用メモリ | 78,020 KB |
最終ジャッジ日時 | 2024-09-27 16:21:01 |
合計ジャッジ時間 | 9,187 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 61 |
ソースコード
from collections import defaultdicth, w = map(int, input().split())A = [list(map(int, input().split())) for _ in range(h)]T = defaultdict(int)Y = defaultdict(int)P = defaultdict(int)M = defaultdict(int)for i in range(h):for j in range(w):T[i] += A[i][j]Y[j] += A[i][j]P[i + j] += A[i][j]M[i - j] += A[i][j]ans = 0L = [T, Y, P, M]for C in L:for i in C:for j in C:if i == j:continueans = max(ans, C[i] + C[j])for i in T:for j in Y:ans = max(ans, T[i] + Y[j] - A[i][j])for i in T:for j in P:x = iy = j - iif 0 <= y < w:ans = max(ans, T[i] + P[j] - A[x][y])else:ans = max(ans, T[i] + P[j])for i in T:for j in M:x = iy = i - jif 0 <= y < w:ans = max(ans, T[i] + M[j] - A[x][y])else:ans = max(ans, T[i] + M[j])for i in Y:for j in P:x = j - iy = iif 0 <= x < h:ans = max(ans, Y[i] + P[j] - A[x][y])else:ans = max(ans, Y[i] + P[j])for i in Y:for j in M:x = i + jy = iif 0 <= x < h:ans = max(ans, Y[i] + M[j] - A[x][y])else:ans = max(ans, Y[i] + M[j])for i in P:for j in M:x = (i + j) / 2y = (i - j) / 2if int(x) == x and int(y) == y and 0 <= x < h and 0 <= y < w:x = int(x)y = int(y)ans = max(ans, P[i] + M[j] - A[x][y])else:ans = max(ans, P[i] + M[j])print(ans)