ποΈ Algorithm/π© λ°±μ€
π© [λ°±μ€] [Python] [BFS/DFS] 2644λ²_μ΄μκ³μ°
Dbswnstjd
2022. 11. 17. 04:57
λ¬Έμ
https://www.acmicpc.net/problem/2644
2644λ²: μ΄μκ³μ°
μ¬λλ€μ 1, 2, 3, …, n (1 ≤ n ≤ 100)μ μ°μλ λ²νΈλ‘ κ°κ° νμλλ€. μ λ ₯ νμΌμ 첫째 μ€μλ μ 체 μ¬λμ μ nμ΄ μ£Όμ΄μ§κ³ , λμ§Έ μ€μλ μ΄μλ₯Ό κ³μ°ν΄μΌ νλ μλ‘ λ€λ₯Έ λ μ¬λμ λ²νΈκ° μ£Όμ΄
www.acmicpc.net
νμ΄
# λ°±μ€ 2644λ² λ¬Έμ - μ΄μκ³μ°
from collections import deque
n = int(input())
x, y = map(int, input().split())
m = int(input())
graph = [[] for i in range(n+1)]
visited = [0 for _ in range(n+1)]
for i in range(m):
a, b = map(int, input().split())
graph[a].append(b)
graph[b].append(a)
def dfs(x):
for i in graph[x]:
if visited[i] == 0:
visited[i] = visited[x] + 1
dfs(i)
dfs(x)
print(visited[y] if visited[y] > 0 else -1 )