ЕГЭ, ОГЭ, программирование и робототехника в Калининграде

№ 26005. Основная волна

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

Тогда покупатель разместил товары по-другому.

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

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

Цены товаров указаны в произвольном порядке.

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

Типовой пример организации данных во входном файле
4
80
50
30
40

При таких исходных данных, если каждый третий товар бесплатно, предполагаемая и действительная суммы равны 120 и 160.

Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемого файла.

with open('2605.txt') as file:
    N = int(file.readline())
    data = list(map(int, file))

# Кол-во целых групп по 9 товаров
groups = N // 9

# Сортируем по убыванию цены
data = sorted(data, reverse=True)
print(sum(data[groups:]))

# Делаем скидку (удаляем) на каждый 9 элемент
data_filtred = [item for idx, item in enumerate(data, start=1) if idx % 9]
print(sum(data_filtred))
Разберём это задание на бесплатном пробном занятии

Преподаватель покажет, как решать такие задачи, и подскажет, с чего начать подготовку. Группы до 8 человек, очно в Калининграде и онлайн.

Записаться на пробное занятие