結果
問題 | No.2095 High Rise |
ユーザー |
👑 ![]() |
提出日時 | 2022-10-07 22:02:11 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
|
実行時間 | - |
コード長 | 887 bytes |
コンパイル時間 | 164 ms |
コンパイル使用メモリ | 82,544 KB |
実行使用メモリ | 172,248 KB |
最終ジャッジ日時 | 2024-06-12 18:25:45 |
合計ジャッジ時間 | 17,529 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 19 TLE * 5 |
ソースコード
from heapq import *def solve():N,M=map(int,input().split())A=[]for _ in range(N):A.append(list(map(int,input().split())))if N==1:return 0inf=float("inf")T=[[inf]*M for _ in range(N)]U=[inf]*N; U[0]=0Q=[(0,0,-1)]while Q:cost,i,j=heappop(Q)if i==N-1:return costif j==-1:Ai=A[i]; Ti=T[i]for k in range(M):if Ti[k]>cost+Ai[k]:Ti[k]=cost+Ai[k]heappush(Q,(Ti[k],i,k))else:alpha=cost+A[i+1][j]if T[i+1][j]>alpha:T[i+1][j]=alphaheappush(Q, (T[i+1][j],i+1,j))if U[i+1]>alpha:U[i+1]=alphaheappush(Q, (U[i+1],i+1,-1))#==================================================print(solve())