結果

問題 No.807 umg tours
コンテスト
ユーザー 回転
提出日時 2025-10-15 23:36:08
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 810 bytes
コンパイル時間 316 ms
コンパイル使用メモリ 82,604 KB
実行使用メモリ 77,332 KB
最終ジャッジ日時 2025-10-15 23:36:17
合計ジャッジ時間 8,062 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 11 TLE * 1 -- * 14
権限があれば一括ダウンロードができます

ソースコード

diff #

def main():
    import heapq
    import sys
    input = sys.stdin.readline
    N,M = list(map(int,input().split()))
    edge = [[] for _ in range(N)]
    for _ in range(M):
        a,b,c = list(map(int,input().split()))
        a -= 1;b -= 1
        edge[a].append((b,c))
        edge[b].append((a,c))

    INF = 10**18
    visited = [[INF,INF] for _ in range(N)]
    q = [(0,0,0), (0,1,0)]
    while(q):
        v,use,now = heapq.heappop(q)

        if(visited[now][use] <= v):continue
        visited[now][use] = v

        if(not use):
            # チケット使用
            for a,c in edge[now]:
                heapq.heappush(q,(v,1,a))
        
        # チケット保持
        for a,c in edge[now]:
            heapq.heappush(q,(v+c,use,a))

    for i in visited:
        print(sum(i))

main()
0