EduBrick

B. Расстояния в большом графе

3000 мс · 256 МБ · всё или ничего

Тот же вопрос, но граф задан списком рёбер и вершин теперь до ста тысяч. Матрица сюда не поместится, а обход в ширину работает так же.

Граф неориентированный; возможны петли и кратные рёбра.

Формат ввода

Первая строка содержит числа nn (1≤n≤1051 \le n \le 10^5), mm (0≤m≤2⋅1050 \le m \le 2 \cdot 10^5) и xx — стартовую вершину.

Далее идут mm строк с рёбрами.

Формат вывода

Одна строка из nn чисел — расстояния от xx или −1-1.

Примеры

ввод
5 4 1
1 2
1 3
2 4
3 5
вывод
0 1 1 2 2
ввод
4 2 1
1 2
3 4
вывод
0 1 -1 -1
Войдите, чтобы отправлять решения.