1. Главная
  2. Библиотека
  3. Экономический анализ
  4. Энтомолог Дмитрий занимается разведением редких видов б...
Решение задачи

Энтомолог Дмитрий занимается разведением редких видов бабочек. В день из кокона появляется одна особь вида «Павлиноглазка атлас». На выставке Дмитрий может продавать бабочек по различной цене, которая меняется каждый день, так же Дмитрию известна

  • Экономический анализ

Условие:

Энтомолог Дмитрий занимается разведением редких видов бабочек. В день из кокона появляется одна особь вида «Павлиноглазка атлас». На выставке Дмитрий может продавать бабочек по различной цене, которая меняется каждый день, так же Дмитрию известна стоимость бабочки ближайшие N дней. Основываясь на известных данных, энтомолог рассчитал максимальное количество монет, которое он может заработать, если считать, что с первого дня у него в запасе была только одна бабочка.

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

В первой строке входного файла находится число N – количество дней, в которые Дмитрию известна цена одной бабочки (натуральное число, не превышающее 10 000). В следующих N строках, на каждой строке находится стоимость одной бабочки в текущий день (все числа натуральные, не превышающие 10 000, каждое – в отдельной строке).

Запишите в ответе два целых числа: сначала максимальный заработок, который получил Дмитрий, действуя расчетливо. А затем запишите максимальную прибыль за один день, которую получил энтомолог.

Типовой пример организации во входном файле

5
32
13
85
52
46

При таких исходных данных, ответом будет являться пара чисел 353 255.

(3 85 + 52 + 46 = 353; 3 85 = 255)

Решение:

Для решения задачи, нам нужно рассчитать два значения: максимальный заработок за все дни и максимальную прибыль за один день.

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

2. Максималь...: Это просто максимальная цена, которую мы видим среди всех дней. Вот пример кода на Python, который выполняет эти расчеты:

- Мы читаем количество дней и цены на бабочек. - Затем мы проходим по списку цен в обратном порядке, обновляя максимальную цену и рассчитывая общий заработок. - Мы также отслеживаем максимальную цену за один день. - В конце выводим оба значения. Этот код эффективно решает задачу с временной сложностью O(N), что подходит для N до 10,000.

Не нашел нужную задачу?

Воспользуйся поиском

Выбери предмет