[백준] 11724번 python : 연결요소의 갯수

2021. 6. 3. 18:05발돋움/알고리즘

728x90
반응형

 

import sys

n, m = map(int, sys.stdin.readline().split())
a = [[] for _ in range(n + 1)]
v = [0] * (n + 1) # 방문을 0과 1로 기록

for _ in range(m):
	n1, n2 = map(int, sys.stdin.readline().split())
	a[n1].append(n2)
	a[n2].append(n1)

def dfs(start):
	v[start] = 1
	for anode in a[start]:
		if v[anode] == 0: # 방문안한 인접노드들만 탐색
			dfs(anode)
	return 1

cnt = 0
for i in range(1, n + 1):
	if v[i] == 0:
		cnt += dfs(i) 탐색이 종료될때마다 카운트해줌

print(cnt)

input()을 sys.stdin.readline() 으로 바꿨더니 속도가 더 빨라졌다.

728x90
반응형