Автор: | А. Баранов | Ограничение времени: | 1 сек | |
Входной файл: | input.txt | Ограничение памяти: | 4 Мб | |
Выходной файл: | output.txt |
Караван купцов движется из города S в город F. Их маршрут должен пройти через города, соединенные между собой прямыми путями.
Известно, что за проход через отдельно взятый город купцам придется платить некоторую установленную пошлину.
Помимо этого за каждую единицу пути, караван тратит определенное число ресурсов, также выраженных в денежном эквиваленте.
Требуется проложить маршрут, минимизирующий суммарную пошлину и число затраченных ресурсов.
В случае, если существует несколько таких маршрутов, необходимо выбрать тот, который проходит через наибольшее число городов.
В начале входного файла "input.txt" указано натуральное N — число городов, за которым следует набор из N целых чисел
Pi — размер пошлины для каждого i-го города.
Далее указано натуральное M, за которым следует ровно M троек целых чисел:
Aj, Bj — номера соседних городов;
Wj — стоимость перехода.
В конце входного файла указаны индексы начального S и конечного F города.
При этом полагается, что нумерация городов начинается с нуля.
Выходной файл "output.txt" должен содержать оптимальный маршрут,
представленный в виде последовательности городов,
через которые он проходит.
2 ≤ N ≤ 1000, 1 ≤ M ≤ (N ⋅ (N − 1)) / 2,
0 ≤ Pi ≤ 106,
0 ≤ (Aj, Bj) < N, Aj ≠ Bj,
0 < Wj ≤ 106
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|