Search

๋ฐ•์ˆ˜์ง„

2.๋ฌธ์ œ์ด๋ฆ„
3. ์ˆ˜ํ–‰์‹œ๊ฐ„[์ดˆ(s)]
3600
์ข‹์•„์š” ๋ˆ„๋ฅด๊ธฐ
์ข‹์•„์š” ์ˆ˜
: 0
5 more properties
| ์ฝ”๋“œ ์ž‘์„ฑํ•˜๊ธฐ
from collections import deque def solution(n, edge): graph = {i:[] for i in range(1, n+1)} global visited visited = [0 for i in range(n+1)] for a,b in edge: graph[a].append(b) graph[b].append(a) result = bfs(graph) return result.count(max(result)) def bfs(graph): q = deque() q.append((1,0)) while q: index, count = q.popleft() # print(current) if not visited[index]: count += 1 visited[index] = count for num in graph[index]: q.append((num,count)) return visited n = 6 edge = [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] print(solution(n, edge))
Java
๋ณต์‚ฌ
| ์ฝ”๋“œ ์„ค๋ช…ํ•˜๊ธฐ
โ€ข
bfs๋กœ ์ขŒ์šฐ๋ถ€ํ„ฐ ์ฐจ๋ก€๋กœ ๋…ธ๋“œ ํƒ์ƒ‰
โ€ข
index๋ฟ๋งŒ ์•„๋‹ˆ๋ผ count๋ฅผ ์ด์ „์˜ ๋…ธ๋“œ์— ๋น„ํ•ด ํ•˜๋‚˜์”ฉ ์ฆ๊ฐ€์‹œ์ผœ์•ผํ•˜๊ธฐ๋•Œ๋ฌธ์— q์— index์™€ ํ•จ๊ป˜ ํ˜„์žฌ์˜ count๋ฅผ ๋„ฃ์–ด์คŒ
โ€ข
์ด ๋ฌธ์ œ๋Š” dfs๋กœ ํ’€๊ฒŒ๋˜๋ฉด ์ค‘๋ณตํƒ์ƒ‰์ด ๋˜๋Š” ๋…ธ๋“œ๊ฐ€ ์ƒ๊ธธ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ bfs๋กœ ์ขŒ์šฐํƒ์ƒ‰์œผ๋กœ ํ•ด์ฃผ๋Š”๊ฒƒ์ด ์ข‹์Œ