結果

問題 No.2915 辺更新価値最大化
コンテスト
ユーザー 👑 p-adic
提出日時 2024-06-15 20:19:44
言語 Python3
(3.14.3 + numpy 2.4.4 + scipy 1.17.1)
コンパイル:
python3 -mpy_compile _filename_
実行:
python3 _filename_
結果
AC  
実行時間 1,977 ms / 2,000 ms
コード長 481 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 416 ms
コンパイル使用メモリ 20,952 KB
実行使用メモリ 15,488 KB
最終ジャッジ日時 2026-04-03 19:08:23
合計ジャッジ時間 28,540 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge5_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 28
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

R=range
J=lambda:map(int,input().split())
N,M,Q=J()
E=[[]for i in R(N)]
F=[]
for j in R(M):u,v,w=J();E[u-1]+=[j];F+=[[u-1,v-1,-w]]
P=[9**20]*N
P[0]=0
for _ in R(N):
	for i,j,w in F:P[j]=min(P[j],P[i]+w)
import heapq
B=[1]*M
for j in J():
	B[j-1]^=1;W,S=[0]+[9**30]*N,[[0,0]]
	while S:
		w,i=heapq.heappop(S)
		if w>W[i]:continue
		for e in E[i]:
			if B[e]:
				i,j,v=F[e];v+=P[i]-P[j]
				if w+v<W[j]:W[j]=w+v;heapq.heappush(S,[w+v,j])
	print(["NaN",-W[N-1]-P[N-1]][W[N-1]<9**20])
0