[백준] 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
반응형
'발돋움 > 알고리즘' 카테고리의 다른 글
| [백준] 2178번 python : 미로탐색 (0) | 2021.06.04 |
|---|---|
| [백준] 2667번 python : 단지번호붙이기 (0) | 2021.06.03 |
| [백준] 1193번 (python 파이썬) 분수찾기 / [구름레벨] 뱀 유리수 수열 (0) | 2021.04.14 |
| [백준] 6603번 (python 파이썬) 로또 (0) | 2021.04.05 |
| [백준] 10974번 (python 파이썬) 모든 순열 (0) | 2021.04.04 |