https://school.programmers.co.kr/learn/courses/30/lessons/43162
def solution(n, computers):
answer = 0
graph = [[] for _ in range(n+1)]
visited = [0 for _ in range(n+1)]
for v, element in enumerate(computers):
print(v, element)
for i, e in enumerate(element):
if e ==1 and v != i:
graph[v+1].append(i+1)
for row in graph:
print(row)
def dfs(v):
visited[v] = 1
print(v)
for next in graph[v]:
if not visited[next]:
dfs(next)
for i in range(1, n+1):
if not visited[i]:
dfs(i)
answer += 1
return answer
728x90
반응형
'🔻PS > Programmers' 카테고리의 다른 글
[Programmers] 프로그래머스 붕대 감기 Python (0) | 2024.07.16 |
---|---|
[Programmers] 프로그래머스 완주하지 못한 선수 Python (0) | 2024.07.16 |
[Programmers] 프로그래머스 추억 점수 Python (0) | 2024.07.16 |
[Programmers] 프로그래머스 단어 변환 Python (0) | 2024.07.16 |
[Programmers] 프로그래머스 저주의 숫자 3 Python (0) | 2024.06.03 |