문제 설명 및 제한사항
아이디어 및 해결 방법
코드
from collections import deque, defaultdict, Counter
def solution(n, edge):
A = defaultdict(list)
for u, v in edge:
A[u].append(v)
A[v].append(u)
distcnt = Counter()
visited = [True] + [False] * n
q = deque()
q.append((1, 0)) # u, dist
visited[1] = True
distcnt[0] += 1
while len(q) > 0:
u, d = q.popleft()
for v in A[u]:
if visited[v]:
continue
q.append((v, d+1))
distcnt[d+1] += 1
visited[v] = True
return distcnt[max(distcnt.keys())]
Python
복사
출처
프로그래머스 코딩테스트 연습 https://school.programmers.co.kr/learn/challenges