Задание выполняется с использованием прилагаемых файлов.
В супермаркете проводится акция «каждый третий товар бесплатно». Покупатель, чтобы максимально использовать условие акции, разделил на ленте товары группами по три товара, собираясь заплатить за каждую группу отдельным чеком. В каждой группе из трех товаров самый дорогой он поместил на третье место.
Однако выяснилось, что программа для кассового аппарата не учитывает расположение товаров на ленте и сортирует цены товаров в чеке таким образом, чтобы стоимость покупки была максимально возможной. Тогда покупатель разместил товары по-другому.
Входные данные.
Первая строка входного файла содержит
Каждая из последующих
Цены товаров указаны в произвольном порядке.
Выходные данные.
В ответе запишите два целых числа: сначала минимальную цену, которую планировал заплатить покупатель изначально, если бы бесплатным был 3-й товар в любой покупке, состоящей
Покупатель делит товары на группы наиболее выгодным для себя способом.
Типовой пример входных данных:
4
80
30
50
40
При таких исходных данных, если каждый третий товар бесплатно, предполагаемая и действительная суммы равны
Ответ:
Решение через Excel.
1. Убираем общее количество товаров.
2. Сортируем весь диапазон по убыванию.
3. Не считаем 3310
4. Пишем формулу =СУММ(A3311:A9931) и получаем ответ на первый вопрос 22262050.
При правильной работе ленты можно каждый третий по стоимости товар сделать бесплатным. Для этого необходимо.
1. Заполняем второй столбец числами 1, 2, 3, 1, 2, 3. Можно заполнить первые три строки, а после этого скопировать их и вставить во все оставшиеся, главное, чтобы их количество было
2. Включаем фильтр и оставляем
Ответ: 22262050 33246829.
Приведём решение на языке Python.
f = open("26_6759.txt")
s = list(map(int,f.readlines()))
s = s[1:]
s.sort(reverse = True)
print(sum(s[len(s)//3:]),sum(s)-sum(s[2::3]))
Приведём решение Юрия Красильникова на языке Python.
tovar = sorted([int(s) for s in open('26_6759.txt')][1:],reverse=True)
print(sum(tovar[len(tovar)//3:]),sum(tovar)-sum(tovar[2::3]))

