Как решить задачу про компанию по доставке товаров, которая ежедневно пользуется платной автомобильной дорогой? [требует правки]

337
20 октября 2017, 12:08

Задача:

Вы работаете с компанией по доставке товаров, которая ежедневно пользуется платной автомобильной дорогой. Плата за путешествие взимается на 10-и пунктах оплаты расположенных вдоль дороги. Водителям компании необходимо преодолеть весь путь, оплатив комиссию за проезд на каждом из пунктов. Сложность состоит в том, что по правилам, комиссию можно оплачивать только одной единственной монетой. В случае, если ее номинал выше, чем стоимость проезда, водитель сдачу не получает и остаток сгорает. Если же монета, наоборот, не полностью покрывает стоимость проезда, то вашей компании насчитывается долг. При этом стоимость проезда на каждом из пунктов абсолютно произвольно изменяется в конце дня, и может варьироваться в диапазоне от 1-ой до 10-и копеек включительно. Также известно, что несколько пунктов оплаты могут выставлять одну и ту же стоимость проезда, а общая сумма проезда через все пункты будет всегда больше 55-и копеек. Каждому водителю в начале пути выдается 10 монет, по одной монете каждого достоинства (т.е. одна монета достоинством в копейку, одна монета достоинством в две копейки, одна - три, и так далее, до десяти копеек включительно). Используя генетический алгоритм, вам необходимо найти такую стратегию оплат путешествия, при которой долг водителя в конце пути будет минимальным. Алгоритм будет применяться компанией в начале каждого дня, и использовать данные по новым, только что установленным, размерам комиссий на пунктах оплат для получения новой стратегии для водителей.

Входящие параметры:

Массив из десяти произвольных чисел от 1 до 10, представляющих собой размеры комиссий на каждом из пунктов. Числа в массиве могут повторятся, и их сумма будет всегда больше чем 55.

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

Массив из десяти чисел, представляющих собой достоинства монет, расположенные в порядке, оптимальном для оплат на каждом из пунктов (так чтобы долг компании после всех оплат был минимальным).

READ ALSO
Java. Привести массив byte[ ] к double, float и short.

Java. Привести массив byte[ ] к double, float и short.

Есть моделька, в ней три поля:

203
Удвоение цикла при подписке на событие

Удвоение цикла при подписке на событие

Добрый день! Помогите разобратьсяПишу Клиент - серверное приложение

245