λ¬Έμ
μ°λ¦¬ λλΌλ κ°μ‘± νΉμ μΉμ²λ€ μ¬μ΄μ κ΄κ³λ₯Ό μ΄μλΌλ λ¨μλ‘ νννλ λ νΉν λ¬Ένλ₯Ό κ°μ§κ³ μλ€. μ΄λ¬ν μ΄μλ λ€μκ³Ό κ°μ λ°©μμΌλ‘ κ³μ°λλ€. κΈ°λ³Έμ μΌλ‘ λΆλͺ¨μ μμ μ¬μ΄λ₯Ό 1μ΄μΌλ‘ μ μνκ³ μ΄λ‘λΆν° μ¬λλ€ κ°μ μ΄μλ₯Ό κ³μ°νλ€. μλ₯Ό λ€λ©΄ λμ μλ²μ§, μλ²μ§μ ν μλ²μ§λ κ°κ° 1μ΄μΌλ‘ λμ ν μλ²μ§λ 2μ΄μ΄ λκ³ , μλ²μ§ νμ λ€κ³Ό ν μλ²μ§λ 1μ΄, λμ μλ²μ§ νμ λ€κ³Όλ 3μ΄μ΄ λλ€.
μ¬λ¬ μ¬λλ€μ λν λΆλͺ¨ μμλ€ κ°μ κ΄κ³κ° μ£Όμ΄μ‘μ λ, μ£Όμ΄μ§ λ μ¬λμ μ΄μλ₯Ό κ³μ°νλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯
μ¬λλ€μ 1, 2, 3, …, n (1 ≤ n ≤ 100)μ μ°μλ λ²νΈλ‘ κ°κ° νμλλ€. μ λ ₯ νμΌμ 첫째 μ€μλ μ 체 μ¬λμ μ nμ΄ μ£Όμ΄μ§κ³ , λμ§Έ μ€μλ μ΄μλ₯Ό κ³μ°ν΄μΌ νλ μλ‘ λ€λ₯Έ λ μ¬λμ λ²νΈκ° μ£Όμ΄μ§λ€. κ·Έλ¦¬κ³ μ μ§Έ μ€μλ λΆλͺ¨ μμλ€ κ°μ κ΄κ³μ κ°μ mμ΄ μ£Όμ΄μ§λ€. λ·μ§Έ μ€λΆν°λ λΆλͺ¨ μμκ°μ κ΄κ³λ₯Ό λνλ΄λ λ λ²νΈ x,yκ° κ° μ€μ λμ¨λ€. μ΄λ μμ λμ€λ λ²νΈ xλ λ€μ λμ€λ μ μ yμ λΆλͺ¨ λ²νΈλ₯Ό λνλΈλ€.
κ° μ¬λμ λΆλͺ¨λ μ΅λ ν λͺ λ§ μ£Όμ΄μ§λ€.
μΆλ ₯
μ λ ₯μμ μꡬν λ μ¬λμ μ΄μλ₯Ό λνλ΄λ μ μλ₯Ό μΆλ ₯νλ€. μ΄λ€ κ²½μ°μλ λ μ¬λμ μΉμ² κ΄κ³κ° μ ν μμ΄ μ΄μλ₯Ό κ³μ°ν μ μμ λκ° μλ€. μ΄λμλ -1μ μΆλ ₯ν΄μΌ νλ€.
μμ μ λ ₯ 1 볡μ¬
9
7 3
7
1 2
1 3
2 7
2 8
2 9
4 5
4 6
μμ μΆλ ₯ 1 볡μ¬
3
μμ μ λ ₯ 2 볡μ¬
9
8 6
7
1 2
1 3
2 7
2 8
2 9
4 5
4 6
μμ μΆλ ₯ 2 볡μ¬
-1
# νμ΄ λ°©λ²
depthλ₯Ό ꡬνλ λ¬Έμ μ΄κΈ° λλ¬Έμ bfsκ° μ μ ν λ¬Έμ μλ€.
μ΄μλ₯Ό μ΄λ»κ² μ μ₯ν΄μΌ νλμ§ κ³ λ―Όμ΄ λ§μλλ° queueλ₯Ό μ μ₯ν λ, νμ¬ λ ΈλλΏ μλλΌ depthλ ν¨κ» μ μ₯νλ λ°©λ²μ 리λ§μΈλνλ€.
# μ½λ
# 2025-04-12 15:26~56
import sys
from collections import deque
# sys.stdin = open("input.txt", "r")
n = int(sys.stdin.readline().strip())
p1, p2 = map(int, sys.stdin.readline().split())
m = int(sys.stdin.readline().strip())
graph = [list(map(int,sys.stdin.readline().split())) for _ in range(m)]
visited = [False] * (n+1)
def bfs(graph, start, visited):
queue = deque()
queue.append((start,0))
visited[start] = True
while queue:
v, depth = queue.popleft()
if v == p2:
return depth
for g in graph:
if g[0] == v:
if not visited[g[1]]:
visited[g[1]] = True
queue.append((g[1], depth + 1))
elif g[1] == v:
if not visited[g[0]]:
visited[g[0]] = True
queue.append((g[0], depth + 1))
return -1
print(bfs(graph,p1,visited))
'π Study > Baekjoon' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Gold III] 1726 - λ‘λ΄ (0) | 2025.04.14 |
---|---|
[Gold V] 14503 - λ‘λ΄ μ²μκΈ° (0) | 2025.04.13 |
[Silver I] 1697- μ¨λ°κΌμ§ (0) | 2025.04.10 |
[Silver II] 11724 - μ°κ²° μμμ κ°μ (0) | 2025.04.10 |
[Silver I] 2667 - λ¨μ§λ²νΈλΆμ΄κΈ° (0) | 2025.04.10 |