Есть проблема, над которой я работаю, для курса программирования, и у меня возникла проблема с разработкой алгоритма для решения этой проблемы. Вот он:
Вы отправитесь в долгий путь. Вы начинаете на дороге в миле. 0. По пути есть n гостиниц, в милях сообщений a1 < a2 <... < a, где каждый ai измеряется от начальной точки. в этих отелях есть только те места, где вы можете остановиться, но вы можете выбрать, какие из отелей вы останавливаетесь. Вы должны остановиться в конечном отеле (на расстоянии a), который является вашим пунктом назначения. Вы идеально хотели бы путешествовать 200 миль в день, но это может быть невозможно (в зависимости от расстояния гостиниц). Если вы путешествуете на x миль в течение дня, штраф за этот день составляет (200 - x) ^ 2. Вы хотите планировать свою поездку таким образом, чтобы свести к минимуму общее наказание, то есть сумму, в течение всех дней путешествия, суточные штрафы. Дайте эффективный алгоритм, который определяет оптимальную последовательность отелей, на которых останавливаться.
Итак, моя интуиция подсказывает мне начинать со спины, проверять значения штрафа, а затем как-то сопоставлять их с возвратом вперед (в результате получается время выполнения O (n ^ 2), которое достаточно оптимально для ситуации).
Кто-нибудь видит какой-либо возможный способ выработать эту идею или какие-либо идеи о возможных имплантациях?