Успеть на поезд

Просмотр в формате PDF

Submit solution


Очки: 110
Ограничение по времени: 2.0s
Ограничение по памяти: 256M

Автор:
Problem types
Allowed languages
C++, Python

Железнодорожная сеть состоит из n станций, соединённых m двусторонними линиями. Поездка по линии между станциями u и v занимает w минут.

Пассажир находится на станции s и хочет добраться до станции t. До отправления его поезда осталось ровно T минут. Требуется определить, сможет ли он успеть, если будет выбирать маршрут с минимальным суммарным временем в пути.

Выведите YES, если минимальное время пути от станции s до станции t не превышает T, и NO в противном случае.

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

В первой строке заданы пять целых чисел n, m, s, t, T — количество станций, количество железнодорожных линий, начальная станция, конечная станция и оставшееся до отправления время.

В следующих m строках заданы описания линий: по три целых числа u, v, w, где u и v — станции, соединённые этой линией, а w — время в пути по ней в минутах.

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

Выведите YES, если пассажир успевает добраться до станции t не позже чем за T минут, иначе выведите NO.

Ограничения

  • 1 <= n <= 100000
  • 0 <= m <= 300000
  • 1 <= s, t <= n
  • 0 <= T <= 10^18
  • 1 <= u, v <= n
  • 0 <= w <= 1000000

Примеры

Пример 1

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

2 1 1 2 5
1 2 5

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

YES
Пример 2

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

3 3 1 3 3
1 2 2
2 3 2
1 3 10

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

NO

Комментарии

Еще нет ни одного комментария.