結果
| 問題 |
No.1283 Extra Fee
|
| コンテスト | |
| ユーザー |
rlangevin
|
| 提出日時 | 2023-02-05 22:34:09 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 852 bytes |
| コンパイル時間 | 289 ms |
| コンパイル使用メモリ | 82,664 KB |
| 実行使用メモリ | 83,044 KB |
| 最終ジャッジ日時 | 2024-07-04 08:08:22 |
| 合計ジャッジ時間 | 5,737 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 16 WA * 14 |
ソースコード
import sys
readline = sys.stdin.readline
N, M = map(int, readline().split())
inf = 10 ** 18
dp0 = [[inf] * N for i in range(N)]
dp1 = [[inf] * N for i in range(N)]
cost = [[0] * N for i in range(N)]
dp0[0][0] = 0
for i in range(M):
h, w, c = map(int, readline().split())
h, w = h - 1, w - 1
cost[h][w] = c
for i in range(N):
for j in range(N):
if i - 1 >= 0:
dp0[i][j] = min(dp0[i][j], dp0[i - 1][j] + cost[i][j])
dp1[i][j] = min(dp1[i][j], dp1[i - 1][j] + cost[i][j])
dp1[i][j] = min(dp1[i][j], dp0[i - 1][j])
if j - 1 >= 0:
dp0[i][j] = min(dp0[i][j], dp0[i][j - 1] + cost[i][j])
dp1[i][j] = min(dp1[i][j], dp1[i][j - 1] + cost[i][j])
dp1[i][j] = min(dp1[i][j], dp0[i][j - 1])
print(min(dp0[-1][-1], dp1[-1][-1]) + 2 * (N - 1))
rlangevin