Найкоротший парний шлях#10082

Найкоротший парний шлях

2 секунди
128 мегабайтів
Дуже легка

Задано неорієнтований граф. Знайдіть найкоротший шлях парної довжини між двома вершинами.

Вхідні дані

Перший рядок містить чотири цілі числа: кількість вершин , кількість ребер (n, m \le 10^5), а також номери вершин і (1 \le s, d \le n). Кожен з наступних рядків містить два цілі числа і , що описують неорієнтоване ребро .

Вихідні дані

Виведіть найкоротшу відстань між вершинами і . Довжина шляху (кількість ребер у шляху) має бути парною. Якщо шляху парної довжини між і не існує, виведіть .

Приклади

Приклад 1

Loading
Loading

Приклад 2

Loading
Loading