Search

์กฐ์˜ˆ์ง€

2.๋ฌธ์ œ์ด๋ฆ„
3. ์ˆ˜ํ–‰์‹œ๊ฐ„[์ดˆ(s)]
1800
์ข‹์•„์š” ๋ˆ„๋ฅด๊ธฐ
์ข‹์•„์š” ์ˆ˜
: 0
5 more properties
| ์ฝ”๋“œ ์ž‘์„ฑํ•˜๊ธฐ
from collections import deque def make_graph(graph, edge): for e in edge: graph[e[0]].append(e[1]) graph[e[1]].append(e[0]) def solution(n, edge): answer = 0 visited = [0 for _ in range(n + 1)] graph = [[] for _ in range(n + 1)] make_graph(graph, edge) queue = deque() queue.append(1) while queue: now = queue.popleft() for node in graph[now]: order = visited[now] + 1 if visited[node] > order or visited[node] == 0: visited[node] = order queue.append(node) return visited[2:].count(max(visited[2:]))
Java
๋ณต์‚ฌ
| ์ฝ”๋“œ ์„ค๋ช…ํ•˜๊ธฐ
1.
๊ทธ๋ž˜ํ”„๋ฅผ ์ธ์ ‘๋ฆฌ์ŠคํŠธ ํ˜•์‹์œผ๋กœ ๋งŒ๋“ ๋‹ค.
2.
bfs ํ˜•ํƒœ๋กœ ๊ฑฐ๋ฆฌ๋ฅผ ํ‘œ์‹œํ•˜๋ฉด์„œ ์ธ์ ‘ํ•œ ๋…ธ๋“œ๋ฅผ ๋ฐฉ๋ฌธํ•œ๋‹ค.
a.
์ธ์ ‘ํ•œ ๋…ธ๋“œ๊ฐ€ ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์•˜๊ฑฐ๋‚˜ (visited[node] == 0)
b.
๋ฐฉ๋ฌธํ–ˆ์œผ๋‚˜ ํ˜„์žฌ ๊ฑฐ๋ฆฌ๋ณด๋‹ค ๋Œ์•„์„œ ๋ฐฉ๋ฌธํ–ˆ์„ ๋•Œ
ํ์— ์ถ”๊ฐ€ํ•˜๊ณ  ๋ฐฉ๋ฌธ๊ฑฐ๋ฆฌ๋ฅผ ๊ฐฑ์‹ ํ•œ๋‹ค.
3.
๋ฐฉ๋ฌธ๊ฑฐ๋ฆฌ๊ฐ€ ๊ฐ€์žฅ ๋†’์€ ์›์†Œ์˜ ๊ฐฏ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
a.
๋ฆฌ์ŠคํŠธ๋ฅผ 0๋ถ€ํ„ฐ ๋งŒ๋“ค์–ด์„œ 0๊ณผ 1์€ ์ œ์™ธํ•˜๊ณ  2๋ถ€ํ„ฐ ์„ผ๋‹ค.