백준. 2606번. 바이러스 파이썬 풀이

minan·2021년 7월 2일
0

백준

목록 보기
24/35

백준. 2606번. 바이러스 파이썬 풀이

문제링크 : https://www.acmicpc.net/problem/2606

BFS를 사용하여 풀었지만 DFS를 사용하여 풀 수도 있다

import sys
# input = sys.stdin.readline
sys.setrecursionlimit(10**6)

from collections import deque

# 컴퓨터의 수 n
n = int(input())

# 간선의 수 m
m = int(input())

graph = [[] for _ in range(n+1)]
visited = [False] * (n+1)

for _ in range(m):
    a, b = map(int, input().split())
    graph[a].append(b)
    graph[b].append(a)

queue = deque([1])
visited[1] = True
result = 0

while queue:
    v = queue.popleft()
    for i in graph[v]:
        if not visited[i]:
            queue.append(i)
            visited[i] = True
            result += 1

print(result)
profile
https://github.com/minhaaan

0개의 댓글

관련 채용 정보