結果
| 問題 |
No.2739 Time is money
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-04-21 20:31:03 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 866 ms / 2,000 ms |
| コード長 | 557 bytes |
| コンパイル時間 | 200 ms |
| コンパイル使用メモリ | 81,920 KB |
| 実行使用メモリ | 115,712 KB |
| 最終ジャッジ日時 | 2024-10-13 19:04:11 |
| 合計ジャッジ時間 | 12,231 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 18 |
ソースコード
from heapq import heappop as pop, heappush as push
N, M, X = map(int, input().split())
edges = [[] for _ in range(N)]
for _ in range(M):
u, v, C, T = map(int, input().split())
u -= 1
v -= 1
edges[u].append((v, C+T*X))
edges[v].append((u, C+T*X))
queue = [(0, 0)]
ans = [-1]*N
while queue:
c, v = pop(queue)
if ans[v] != -1:
continue
ans[v] = c
for u, c_ in edges[v]:
if ans[u] != -1:
continue
push(queue, (c+c_, u))
if ans[-1] == -1:
print(-1)
else:
print((ans[-1]-1)//X+1)