Skip to content

Commit 7fe348d

Browse files
authored
Update 3.py
1 parent 2cbd672 commit 7fe348d

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

17/3.py

+12-12
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,41 @@
11
import heapq
22
import sys
33
input = sys.stdin.readline
4-
INF = int(1e9) # 무한을 의미하는 값으로 10억을 설정합니다.
4+
INF = int(1e9) # 무한을 의미하는 값으로 10억을 설정
55

66
dx = [-1, 0, 1, 0]
77
dy = [0, 1, 0, -1]
88

9-
# 전체 테스트 케이스(Test Case)만큼 반복합니다.
9+
# 전체 테스트 케이스(Test Case)만큼 반복
1010
for tc in range(int(input())):
11-
# 노드의 개수를 입력 받습니다.
11+
# 노드의 개수를 입력받기
1212
n = int(input())
1313

14-
# 전체 맵 정보를 입력 받습니다.
14+
# 전체 맵 정보를 입력받기
1515
graph = []
1616
for i in range(n):
1717
graph.append(list(map(int, input().split())))
1818

19-
# 최단 거리 테이블을 모두 무한으로 초기화합니다.
19+
# 최단 거리 테이블을 모두 무한으로 초기화
2020
distance = [[INF] * n for _ in range(n)]
2121

22-
x, y = 0, 0 # 시작 위치는 (0, 0)입니다.
23-
# 시작 노드로 가기 위한 비용은 (0, 0) 위치의 값으로 설정하여, 큐에 삽입합니다.
22+
x, y = 0, 0 # 시작 위치는 (0, 0)
23+
# 시작 노드로 가기 위한 비용은 (0, 0) 위치의 값으로 설정하여, 큐에 삽입
2424
q = [(graph[x][y], x, y)]
2525
distance[x][y] = graph[x][y]
2626

27-
# 다익스트라 알고리즘을 수행합니다.
27+
# 다익스트라 알고리즘을 수행
2828
while q:
29-
# 가장 최단 거리가 짧은 노드에 대한 정보를 꺼냅니다.
29+
# 가장 최단 거리가 짧은 노드에 대한 정보를 꺼내기
3030
dist, x, y = heapq.heappop(q)
31-
# 현재 노드가 이미 처리된 적이 있는 노드라면 무시합니다.
31+
# 현재 노드가 이미 처리된 적이 있는 노드라면 무시
3232
if distance[x][y] < dist:
3333
continue
34-
# 현재 노드와 연결된 다른 인접한 노드들을 확인합니다.
34+
# 현재 노드와 연결된 다른 인접한 노드들을 확인
3535
for i in range(4):
3636
nx = x + dx[i]
3737
ny = y + dy[i]
38-
# 맵의 범위를 벗어나는 경우 무시합니다.
38+
# 맵의 범위를 벗어나는 경우 무시
3939
if nx < 0 or nx >= n or ny < 0 or ny >= n:
4040
continue
4141
cost = dist + graph[nx][ny]

0 commit comments

Comments
 (0)