from collections import deque
def bfs(v, visited, computers):
q = deque([v])
visited[v] = 1
while q:
x = q.popleft()
for i in range(len(computers[x])):
if computers[x][i] == 1 and not visited[i]:
q.append(i)
visited[i] = 1
def solution(n, computers):
answer = 0
visited = [0] * n
for v in range(n):
if not visited[v]:
bfs(v, visited, computers)
answer += 1
print(visited)
return answer
우또비.. 또 BFS풀이.. 이번엔 DFS로 해볼까 했는데 못 구현해서 ㅎㅎㅎ...
하여간 20분 정도 안에 프린트디버깅과 함께 자력으로 구현해서 나름 뿌듯하게 패스합니다. : )
'CodingTest > Programmers' 카테고리의 다른 글
[ 프로그래머스 ] 단어 변환 (0) | 2022.10.21 |
---|---|
[ 프로그래머스 ] 게임 맵 최단거리 (0) | 2022.10.21 |
[ 프로그래머스 ] 단속카메라 (0) | 2022.10.21 |
[ 프로그래머스 ] 짝지어 제거하기 (0) | 2022.07.18 |
[ 프로그래머스 ] 서울에서 김서방 찾기 (0) | 2022.07.18 |