EduBrick

N. Липецкие дороги

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

В городе две фирмы такси; у каждой свой набор дорог и своё время проезда по ним. Заказать такси можно только там, где работает интернет: на kk перекрёстках, причём на ii-м загрузка приложения занимает cic_i времени. В отеле интернет есть, и первое приложение выбирается мгновенно.

Вася выходит из отеля ss и хочет добраться до места ff; по дороге он может выйти из такси на любом перекрёстке и вызвать другое. Найдите минимальное время.

Формат ввода

В первой строке nn, m1m_1, m2m_2 и kk (2≤n≤100 0002 \le n \le 100\,000, 0≤m1+m2≤200 0000 \le m_1 + m_2 \le 200\,000, 0≤k≤n0 \le k \le n). Далее m1m_1 строк с дорогами первой фирмы: aia_i, bib_i, wiw_i (0≤wi≤1060 \le w_i \le 10^6). Затем m2m_2 строк с дорогами второй фирмы в том же формате.

Далее kk строк: номер перекрёстка с интернетом и время загрузки приложения cic_i (0≤ci≤1060 \le c_i \le 10^6). В последней строке — номера ss и ff (s≠fs \ne f).

Между любой парой перекрёстков не более одной дороги каждой фирмы; дороги двусторонние.

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

Выведите минимальное время или −1-1, если добраться нельзя.

Примеры

ввод
7 6 6 2
1 2 10
1 3 1
2 3 1
2 4 3
3 5 5
4 6 3
1 5 10
2 3 2
3 4 5
4 5 10
4 7 30
6 7 100
2 6
5 1
1 7
вывод
45
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.