eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Сложность алгоритма

Сложность алгоритма

Петя хочет воспользоваться своим собственным алгоритмом, чтобы решить очень важную задачу для ориентированного графа G, состоящего из n вершин и m ребер. К сожалению, Петя не умеет оценивать сложность своего алгоритма. Он лишь знает, что она связана с порядком роста величины F(n), которая обозначает количество путей длины n из вершины s в вершину t в графе G. Петя хочет ограничить F(n) многочленом минимальной степени, то есть найти такое минимальное неотрицательное целое число k, что для некоторой константы C неравенство F(n) ≤ C * nk будет выполняться для всех положительных n.

Помогите ему сделать это.

Входные данные

В первой строке записаны четыре числа: n, m, s, t (1n, m105). Вершины графа занумерованы числами от 1 до n. В каждой из следующих m строк через пробел записаны два числа - номера начальной и конечной вершины очередной дуги. В графе не может быть кратных дуг, но могут быть петли.

Выходные данные

Выведите минимальное целое число k, удовлетворяющее условию задачи. Если таких чисел не существует, выведите "-1".

Лимит времени 1 секунда
Лимит использования памяти 128 MiB
Входные данные #1
2 3 1 2
1 1
1 2
2 2
Выходные данные #1
1
Входные данные #2
3 6 1 2
1 2
2 1
1 3
3 1
2 3
3 2
Выходные данные #2
-1
Автор Иван Бурмистров
Источник 2009 Petrozavodsk Winter Session, Ural SU Contest, Февраль 4, Задача C