๋ฌธ์
https://www.acmicpc.net/problem/24445
24445๋ฒ: ์๊ณ ๋ฆฌ์ฆ ์์ - ๋๋น ์ฐ์ ํ์ 2
์ฒซ์งธ ์ค์ ์ ์ ์ ์ N (5 ≤ N ≤ 100,000), ๊ฐ์ ์ ์ M (1 ≤ M ≤ 200,000), ์์ ์ ์ R (1 ≤ R ≤ N)์ด ์ฃผ์ด์ง๋ค. ๋ค์ M๊ฐ ์ค์ ๊ฐ์ ์ ๋ณด u v๊ฐ ์ฃผ์ด์ง๋ฉฐ ์ ์ u์ ์ ์ v์ ๊ฐ์ค์น 1์ธ ์
www.acmicpc.net
ํ์ด
# ๋ฐฑ์ค 24445๋ฒ ๋ฌธ์ - ์๊ณ ๋ฆฌ์ฆ ์์
- ๋๋น ์ฐ์ ํ์ 2
from collections import deque
import sys
input = sys.stdin.readline
n, m, r = map(int, input().split())
graph = [[] for _ in range(n+1)]
visited = [0] * (n+1)
count = 1
for _ in range(m):
a, b = map(int, input().split())
graph[a].append(b)
graph[b].append(a)
def bfs(n):
global count
q = deque()
q.append(n)
visited[n] = 1
while q:
v = q.popleft()
graph[v].sort(reverse=True)
for i in graph[v]:
if not visited[i]:
count += 1
visited[i] = count
q.append(i)
bfs(r)
for v in visited[1:]:
print(v)
BFS๋ฅผ ์ฌ์ฉํ ๊ธฐ๋ณธ์ ์ธ ๋ฌธ์ ์ด๋ค.
'๐๏ธ Algorithm > ๐ฉ ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๐ฉ [๋ฐฑ์ค] [Python] 13549๋ฒ_์จ๋ฐ๊ผญ์ง 3 (0) | 2022.12.17 |
---|---|
๐ฉ [๋ฐฑ์ค] [Python] 24444๋ฒ_์๊ณ ๋ฆฌ์ฆ ์์ - ๋๋น ์ฐ์ ํ์ 1 (0) | 2022.12.16 |
๐ฉ [๋ฐฑ์ค] [Python] 16234๋ฒ_์ธ๊ตฌ ์ด๋ (0) | 2022.12.16 |
๐ฉ [๋ฐฑ์ค] [Python] 2589๋ฒ_๋ณด๋ฌผ ํ์ (0) | 2022.12.14 |
๐ฉ [๋ฐฑ์ค] [Python] 3273๋ฒ_๋ ์์ ํฉ (0) | 2022.12.14 |