알고리즘 문제들 으악/백준

[python]11724번 연결 요소의 개수,무방향=양방향 그래프

빈나 2023. 1. 18. 20:04
반응형

무방향 그래프를 일방향 그래프로 오해해서 삽질하고 있었다.

문제는 구름 알고리즘에서 풀었던 모래섬 문제처럼 덩어리 확인하는 문제였다.

따라서 dfs로 쭈욱 노드들을 순회하면서 visit값을 갱신하고,

visit값이 False인 노드들을 만날때마다 rst+=1을 해주면서 순회를 반복했다.

 

import sys
input = sys.stdin.readline
sys.setrecursionlimit(123456)
node,edge = map(int,input().split())
def find(num):
    for next in graph[num]:
        if not visit[next]:
            visit[next]=1
            find(next)
rst = 0
graph = [[] for i in range(node+1)]
visit = [0 for i in range(node+1)]
for i in range(edge):
    fst,scd = map(int,input().split())
    graph[fst].append(scd)
    graph[scd].append(fst)
for i in range(1,node+1):
    if not visit[i]:
        rst+=1
        visit[i]=1
        find(i)
print(rst)
반응형