https://www.acmicpc.net/problem/24444
1. 내가 작성한 코드
from collections import deque
import sys
input = sys.stdin.readline
n, m, r = map(int, input().split())
graph = [[] for i in range(n+1)]
visit = [0] * (n+1)
cnt = 1
for i in range(m):
a,b = map(int, input().split())
graph[a].append(b)
graph[b].append(a)
def bfs(graph, visit, v):
global cnt
queue = deque()
queue.append(v)
visit[v] = cnt
while queue:
popv = queue.popleft()
graph[popv].sort()
for i in graph[popv]:
if visit[i] == 0:
queue.append(i)
cnt+=1
visit[i] = cnt
bfs(graph, visit, r)
for i in range(1,len(visit)):
print(visit[i])
while queue:
popv = queue.popleft()
graph[popv].sort()
for i in graph[popv]:
if visit[i] == 0:
queue.append(i)
cnt+=1
visit[i] = cnt
자꾸 이 부분의 반복문을 popv로 해주는 걸 까먹네
딥러닝하기~
'🔅코딩테스트 공부🔅 > ❗백준' 카테고리의 다른 글
[백준] 24416번 알고리즘 수업 - 피보나치 수 1(python) (0) | 2023.02.09 |
---|---|
[백준] 1012번 유기농 배추(with python) (0) | 2023.02.08 |
[백준] 2667번 단지번호붙이기(with python) (0) | 2023.02.08 |
[백준] 2606번 바이러스(with python) (0) | 2023.02.08 |
[백준] 24479번 깊이 우선 탐색1 (with python) (0) | 2023.02.07 |
댓글