from collections import deque
def bfs(n, adj):
q = deque()
q.append([1, 0])
ck = [0] * n
while q:
cnt, nod = q.popleft()
if ck[nod] == 0:
ck[nod] = cnt
cnt += 1
for a in adj[nod]:
q.append([cnt, a])
ret = 0
for c in ck:
if c == max(ck):
ret += 1
return ret
def solution(n, edge):
adj = [[] for _ in range(n)]
for e in edge:
x = e[0]-1
y = e[1]-1
adj[x].append(y)
adj[y].append(x)
return bfs(n, adj)
programmers.co.kr/learn/courses/30/lessons/49189
'알고리즘 > 프로그래머스(Python)' 카테고리의 다른 글
그리디 - 구명보트 / 파이썬 (0) | 2020.11.09 |
---|---|
그리디 - 조이스틱 / 파이썬 (0) | 2020.11.09 |
힙 - 이중우선순위큐 / 파이썬 (0) | 2020.11.06 |
힙 - 디스크 컨트롤러 / 파이썬 (0) | 2020.11.05 |
힙 - 더 맵게 / 파이썬 (0) | 2020.11.05 |