문제 출처 : www.acmicpc.net/problem/11403
내 풀이
각 정점마다 dfs를 돌면서 연결된 정점을 check에 방문처리해 준 후에
출력하도록 코드를 짰다.
import sys
input = sys.stdin.readline
def dfs(v):
for i in range(n):
if check[i] == 0 and arr[v][i] == 1:
check[i] = 1
dfs(i)
n = int(input())
arr = []
for i in range(n):
arr.append(list(map(int, input().split())))
check = [0 for _ in range(n)]
for i in range(n):
dfs(i)
print(*check)
check = [0 for _ in range(n)]
'코딩테스트' 카테고리의 다른 글
[백준][파이썬]11067번: 모노톤길 (0) | 2021.04.14 |
---|---|
[백준][파이썬]18870번: 좌표 압축 (0) | 2021.04.14 |
[백준][파이썬]1260번: DFS와 BFS (0) | 2021.04.12 |
[백준][파이썬]2775번: 부녀회장이 될테야 (0) | 2021.04.11 |
[백준][파이썬]11724번: 연결 요소의 개수 (0) | 2021.04.07 |