結果
| 問題 | No.2982 Logic Battle |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-09-20 17:10:49 |
| 言語 | PyPy3 (7.3.23 + ACL) |
| 結果 |
WA
不安定
|
| 実行時間 | - |
| コード長 | 779 bytes |
| 記録 | |
| コンパイル時間 | 61 ms |
| コンパイル使用メモリ | 82,152 KB |
| 実行使用メモリ | 85,492 KB |
| 最終ジャッジ日時 | 2026-09-20 17:11:31 |
| 合計ジャッジ時間 | 39,816 ms |
|
ジャッジサーバーID (参考情報) |
judge1_1 / judge3_1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 4 WA * 34 |
ソースコード
N = int(input())
A = [0]+[list(map(int,input().split())) for _ in range(N)]
INFTY = 10**17
dp = [[[-INFTY for _ in range(N+1)] for _ in range(3)] for _ in range(2)]
for j in range(3):
z = A[1][j]
R = N+1-1
z0 = max(0,z-R)
s = R*z0
x = min(z,R)
s += x
x = max(0,x-1)
dp[1][j][x] = s
for i in range(1,N):
for j in range(3):
for x in range(N+1-i+1):
for k in range(3):
if k==j:continue
z = x+A[i+1][k]
R = N+1-(i+1)
z0 = max(0,z-R)
s = dp[i%2][j][x]+z0*R
y = min(z,R)
s += y
y = max(0,y-1)
dp[(i+1)%2][k][y] = s
ans = 0
for j in range(3):
ans = max(ans,dp[N%2][j][0])
print(ans)