Новая Школа - онлайн-школа подготовки к ЕГЭ
При поддержке
Тренировки Пробники Статистика Карточки Учебник Об экзамене Учительская
  • Тренажёр заданий ЕГЭ
  • Тренажёр ЕГЭ по Информатике
  • Список заданий №26
  • Задание №26
  • Задание №32183 ЕГЭ Информатике

    Условие задания #32183

    №26 по КИМ

    В магазине электроники раз в месяц проводится распродажа. Из всех товаров выбирают К товаров с самой большой ценой и делают на них скидку в 20%, затем ещё М товаров с самой большой ценой и делают на них скидку 10%. По заданной информации о цене каждого из товаров и количестве товаров, на которые будет скидка, определите цену самого дорогого товара, не участвующего в распродаже, а также целую часть от суммы всех скидок.

    Входные и выходные данные. В первой строке входного файла 2.txt находятся три числа, записанные через пробел: N — общее количество цен (натуральное число, не превышающее 10 000), К — количество товаров со скидкой 20% и М — количество товаров со скидкой 10%. В следующих N строках находятся значения цены каждого из товаров (все числа натуральные, не превышающие 10 000), каждое в отдельной строке. Запишите в ответе два числа: сначала цену самого дорогого товара, не участвующего в распродаже, а затем целую часть от суммы всех скидок.

    Пример входного файла:
    10 3 2
    1800
    3600
    3700
    800
    2600
    2500
    1800
    1500
    1900
    1200
    При таких исходных данных ответ должен содержать два числа — 1800 и 2420.
    Пояснение: скидка 20% будет на товары стоимостью 3700, 3600, 2600 и 10% на товары стоимостью 2500 и 1900. Тогда самый дорогой товар без скидки стоит 1800, а сумма скидок 740+720+520+250+190 = 2420.

    Ответ

    Ответ:

    7500 314590

    Решение

    Сначала считаем первую строку, затем остальные числа в массив и отсортируем его в порядке убывания.  После считаем нужные нам значения.

    Приведём решение на языке Python.

    task_file = open('ege-inf-21-22-jobs-nikrilovvar5-z26.txt')

    n, k, m = map(int, task_file.readline().split())
    a = sorted([int(x) for x in task_file.readlines()],  reverse=True)

    s = sum(a[:k])*0.2+sum(a[k:k+m])*0.1
    print(a[k+m], int(s))

    Ответ: 7500 314590.

    Примечание. Путь к файлу необходимо указать согласно расположению файла на Вашем компьютере.

    Понятно ли решение?

    Похожие задания

    15
    Задание №46720Задание №46721Задание №46752Задание №51424Задание №46719Задание №32183Задание №46642Задание №32179Задание №41214Задание №46643Задание №56108Задание №41209Задание №41208Задание №36692Задание №46645
    Бесплатно

    Решай задачи ЕГЭ в приложении

    Скачивай наш Тренажер ЕГЭ на iPhone или Android и тренируйся в любое время и в любом месте!

    Саша — ассистент в телеграмме