From 41c54fecf476641e8ee067d2962cd3b6a1a202f8 Mon Sep 17 00:00:00 2001 From: Jisoo Hwang <77599304+plum-king@users.noreply.github.com> Date: Sat, 20 May 2023 23:23:40 +0900 Subject: [PATCH] =?UTF-8?q?#26=20:=201753=5F=EC=B5=9C=EB=8B=A8=EA=B2=BD?= =?UTF-8?q?=EB=A1=9C.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...34\353\213\250\352\262\275\353\241\234.py" | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 "\354\235\264\353\213\210\354\247\200\354\210\230/1753_\354\265\234\353\213\250\352\262\275\353\241\234.py" diff --git "a/\354\235\264\353\213\210\354\247\200\354\210\230/1753_\354\265\234\353\213\250\352\262\275\353\241\234.py" "b/\354\235\264\353\213\210\354\247\200\354\210\230/1753_\354\265\234\353\213\250\352\262\275\353\241\234.py" new file mode 100644 index 0000000..191fb49 --- /dev/null +++ "b/\354\235\264\353\213\210\354\247\200\354\210\230/1753_\354\265\234\353\213\250\352\262\275\353\241\234.py" @@ -0,0 +1,42 @@ +#1753 + +import heapq +import sys +input = sys.stdin.readline +INF = int(1e9) + + +n,m = map(int, input().split()) +start = int(input()) +graph = [[] for i in range(n+1)] +distance = [INF]*(n+1) + +for _ in range(m): + a,b,c = map(int, input().split()) + graph[a].append((b,c)) + +def dijkstra(start): + q=[] + heapq.heappush(q, (0, start)) + distance[start]=0 + + while q: + dist, now = heapq.heappop(q) + if distance[now] < dist: + continue + for i in graph[now]: + cost = dist + i[1] + if cost < distance[i[0]]: + distance[i[0]] = cost + heapq.heappush(q, (cost, i[0])) + print(q) + +dijkstra(start) + +for i in range(1, n+1): + if distance[i]==INF: + print("INF") + else: + print(distance[i]) + +