Торговец владеет тремя видами товаров: алмазы, яблоки и шелк. Для каждого товара известна стоимость в золотых монетах за единицу веса и его количество у торговца.
В стране, где живет торговец, есть N городов, которые пронумерованы от 1 до N. Родной город торговца имеет номер 1, а столица – номер N. Чтобы добраться до столицы, где торговец может продать товар, ему нужно проехать определенным маршрутом через другие города. Между некоторыми парами городов существуют дороги, проезд по которым стоит определенного количества золотых. В каждом городе взимается налог за провоз каждого из видов товара, заданный в процентах от стоимости провезенного через город товара. Известно, что выехав из любого города, торговец не может в него вернуться. Любые два города соединены не более чем одной дорогой.
Задача торговца получить наибольшую прибыль – разницу полученных в столице денег за проданный товар и расходов на путешествие в столицу. Он не обязан брать с собой весь свой товар. Торговец всегда имеет достаточно золотых для уплаты налогов, и не может рассчитаться товаром, который он везет в столицу. Все дороги ведут только в одном направлении.
Напишите программу, которая по информации о количестве единиц веса разных видов товара у торговца, цене на эти товары в столице, налогах в городах, дорогах между городами и стоимости проезда по этим дорогам установит максимальную прибыль, которую может получить торговец от реализации товара.
Выходные данные
Единственная строка выходного файла должна содержать одно число – точное значение найденной максимальной прибыли от поездки в столицу. Ответ всегда должен содержать ровно два знака после точки. В случаях, когда торговец не может получить прибыль или добраться до столицы по существующим дорогам, требуется вывести 0.00