Search

๊น€๋ฏผ์ง€

2.๋ฌธ์ œ์ด๋ฆ„
3. ์ˆ˜ํ–‰์‹œ๊ฐ„[์ดˆ(s)]
600
์ข‹์•„์š” ๋ˆ„๋ฅด๊ธฐ
์ข‹์•„์š” ์ˆ˜
: 0
5 more properties
| ์ฝ”๋“œ ์ž‘์„ฑํ•˜๊ธฐ
from collections import deque def solution(n, edge): q=deque() graph=[[] for _ in range(n+1)] distance=[-1]*(n+1) for a, b in edge : graph[a].append(b) graph[b].append(a) q.append(1) distance[1]=0 while q : node=q.popleft() for next in graph[node] : if(distance[next]==-1) : distance[next]=distance[node]+1 q.append(next) ans=max(distance) return distance.count(ans)
Python
๋ณต์‚ฌ
| ์ฝ”๋“œ ์„ค๋ช…ํ•˜๊ธฐ
1.
์ธ์ ‘๋ฆฌ์ŠคํŠธ๋กœ graph๋ฅผ ๋งŒ๋“ค๊ณ  ์ •์  1์—์„œ๋ถ€ํ„ฐ ๊ฑฐ๋ฆฌ๋ฅผ ์ €์žฅํ•  distance ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ ๋‹ค.
2.
์ •์  1์—์„œ๋ถ€ํ„ฐ ์‹œ์ž‘์ด๋ฏ€๋กœ q์— ์ •์  1์„ ์‚ฝ์ž…ํ•˜๊ณ  distance[1]์„ 0์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•œ๋‹ค
3.
q์—์„œ ๋งจ ์•ž์— ์žˆ๋Š” ๋…ธ๋“œ๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค.
4.
ํ•ด๋‹น ๋…ธ๋“œ์™€ ์—ฐ๊ฒฐ๋œ ์ •์ ์ด ๋ฐฉ๋ฌธํ•œ์ ์ด ์—†๋‹ค๋ฉด distance ๊ฐ’์„ ๊ฐฑ์‹ ํ•˜๊ณ  q์— ์—ฐ๊ฒฐ๋œ ์ •์ ์„ ๋„ฃ์–ด์ค€๋‹ค.
5.
q์— ์•„๋ฌด๊ฒƒ๋„ ์—†์„ ๋•Œ๊นŒ์ง€ 3~4๋ฒˆ ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•œ๋‹ค.
6.
distance๊ฐ€ ์ตœ๋Œ“๊ฐ’์ธ ๋…ธ๋“œ์˜ ๊ฐœ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.