Сколько кратчайших путей
8000 мс · 256 МБ · всё или ничего
Сколько существует различных кратчайших путей от вершины 1 до вершины ?
Ответ может быть огромным, поэтому выведите остаток от его деления на . Если пути нет, выведите 0.
Формат ввода
В первой строке числа от до и от до . Во второй строке чисел: пары концов рёбер.
Формат вывода
Одно число.
Примеры
ввод
2 1 1 2
вывод
1
Примечание
Ведите рядом с расстоянием ещё и количество путей. Когда сосед впервые получает расстояние, он наследует количество у текущей вершины; когда встречается снова и расстояние совпало, количества складываются. Обход в ширину гарантирует, что к моменту обработки вершины её количество уже посчитано целиком.
Войдите, чтобы отправлять решения.