-
2606번: 바이러스
첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어
www.acmicpc.net
코드
n = int(input()) m = int(input()) tree = list([] for _ in range(101)) count = list(0 for _ in range(101)) dfs_check = list(0 for _ in range(101)) dfs_answer = [] for _ in range(m): between = list(map(int, input().split())) tree[between[0]].append(between[1]) tree[between[1]].append(between[0]) count[between[0]] += 1 count[between[1]] += 1 def dfs(p): if dfs_check[p] == 0: dfs_check[p] = 1 dfs_answer.append(p) tree[p].sort() for i in range(count[p]): dfs(tree[p][i]) dfs(1) print(len(dfs_answer)-1)
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 1012번 유기농 배추 (파이썬) (0) 2022.01.04 [백준] 2667번 단지번호붙이기 (파이썬) (0) 2022.01.04 [백준] 1260번 DFS와 BFS (파이썬) (0) 2022.01.04 [백준] 7579번 앱 (파이썬) (0) 2022.01.04 [백준] 2293번 동전 1 (파이썬) (0) 2022.01.04