Задания 26. Обработка целочисленной информации

28.05.2022

В задание №26

Тема: Обработка массива целых чисел из файла. Сортировка.

Проверяется yмение обрабатывать целочисленную информацию с использованием сортировки

Примеры заданий:

Задание 26 Простое задание (Решу ЕГЭ)

Системный администратор раз в неделю создаёт архив пользовательских файлов. Однако объём диска, куда он помещает архив, может быть меньше, чем суммарный объём архивируемых файлов. Известно, какой объём занимает файл каждого пользователя.

По заданной информации об объёме файлов пользователей и свободном объёме на архивном диске определите максимальное число пользователей, чьи файлы можно сохранить в архиве, а также максимальный размер имеющегося файла, который может быть сохранён в архиве, при условии, что сохранены файлы максимально возможного числа пользователей.

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

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

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

Пример входного файла:

100 4

80

30

50

40

При таких исходных данных можно сохранить файлы максимум двух пользователей. Возможные объёмы этих двух файлов 30 и 40, 30 и 50 или 40 и 50. Наибольший объём файла из перечисленных пар — 50, поэтому ответ для приведённого примера:

2 50

скачать >> 26_R_EGE.txt
Проще всего 26-е задание решать в Excel. Можно решить задание и с помощью программы, но это будет посложнее. На ЕГЭ решение через программы не рекомендуется.
Здесь и далее во всех задачах этого класса предполагается, что не все файлы могут быть сохранены на диске, то есть хотя бы для одного файла места не хватит.
Решаем с помощью Excel
  1. Сначала загружаем данные в электронную таблицу, отрываем файл, копируем (Ctrl+A) и вставляем в Excel (Ctrl+V), для удобства переносим первую строку, которая содержит не такие данные, как все остальные и сортируем по возрастанию столбец А
  2. Далее начинаем выделять ячейки первого столбца, отслеживая значение суммы в строке состояния, нужно выделить наибольшее количество данных, сумма которых не больше, чем 8200
  3. Получили:
    — Количество строк 568 (это первый ответ)
    — Сумма 8176
    — Последний наибольший файл 29
  4. Попробуем заменить наибольший файл ещё большим, так как наш архив (8200) это позволяет сделать:
    — убираем наш наибольший 29 из общей суммы 8176-29=8147
    — из исходного объема архива отнимаем полученное 8200-8147=53, получается что нам надо поискать файл такого или немного поменьше размера.
  5. Спускаемся по списку и находим, что нам подходит первый файл размером 50
Мы нашли максимальное количество файлов 568 и максимальный файл 50
Ответ: 56850
Задание 26 демо (ФИПИ-2022)

Организация засаживает ряды саженцев, которые идут параллельно друг другу.
Известно,какие места в рядах уже заняты саженцами. Найдите ряд с наибольшим номером(нумерация рядом идет по возрастанию), в котором есть 13 подряд
свободных мест, таких что слева и справа от них в том же ряду места уже засажены (заняты). Гарантируется, что есть хотя бы один ряд, удовлетворяющий этому
условию. В ответе запишите два целых числа: максимальный номер ряда и наименьший номер
места из найденных в этом ряду подходящих пар свободных мест.

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

7
40 3
40 7
60 33
50 125
50 129
50 68
50 72
Для приведённого примера, при условии, что необходимо
3 свободных места, ответом является пара чисел: 50; 69.

Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемых файлов.
скачать >> 26 (3).txt
Решаем с помощью Excel
Задание 26 Товар/Скидки (Решу ЕГЭ)
Как нас обманывают в магазинах 🙂
Продавец предоставляет покупателю, делающему большую закупку, скидку по следующим правилам:
  • — на каждый второй товар стоимостью больше 50 рублей предоставляется скидка 25%;
  • — общая стоимость покупки со скидкой округляется вверх до целого числа рублей;
  • — порядок товаров в списке определяет продавец и делает это так, чтобы общая сумма скидки была наименьшей.
По известной стоимости каждого товара в покупке необходимо определить общую стоимость покупки с учётом скидки и стоимость самого дорогого товара, на который будет предоставлена скидка.
Входные данные:
Первая строка входного файла содержит число N — общее количество купленных товаров. Каждая из следующих N строк содержит одно целое число — стоимость товара в рублях.
Выходные данные:
В ответе запишите два целых числа: сначала общую стоимость покупки с учётом скидки, затем стоимость самого дорогого товара, на который будет предоставлена скидка.
Типовой пример организации входных данных:

6

125

50

490

215

144

320

В данном случае товар стоимостью 50 не участвует в определении скидки, остальные товары продавцу выгодно расположить в таком порядке цен: 490, 125, 215, 144, 320. Тогда скидка предоставляется на товары стоимостью 125 и 144. Стоимость этих двух товаров со скидкой составит 201,75 руб., после округления — 202 руб. Общая стоимость покупки составит:

 

50 + 490 + 215 + 320 + 202 = 1277 руб.

 

Самый дорогой товар, на который будет получена скидка, стоит 144 руб. В ответе нужно записать числа 1277 и 144.

скачать >> 26 (4).txt
Решаем с помощью Excel
  1. Отрываем файл, копируем (Ctrl+A) и вставляем в Excel (Ctrl+V), убираем первое число(N — общее количество купленных товаров) и сортируем по возрастанию
  2. Копируем диапазон товаров меньше 50, на который скидка не действует, переносим в отдельный столбец (С)
  3. Копируем диапазон от 50 и более, переносим в отдельные столбцы (Е и G)
  4. Столбец Е сортируем по убыванию, это будет более дорогой ПЕРВЫЙ товар, столбец G оставляем по возрастанию, это будет ВТОРОЙ по списку товар, на который действует скидка 25%
  5. Выделив столбец Е, мы видим, что ли количество товаров 965, делим его пополам и находим середину, между двумя столбцами, нижнюю половину удаляем
    Мы нашли Самый дорогой товар, на который будет получена скидка, стоит 511 руб.
  6. В ячейку Н2 вставляем формулу для переоценки каждого второго товара, т.е. цену умножаем на 0,75 (скидка 25%)
  7. Суммируем наш товар:
    — сумма товара без скидки до 50 рублей 1042
    — сумма КАЖДОГО ПЕРВОГО 366132
    — сумму товара со скидкой округляем ВВЕРХ 102610
    Сумма всего товара 469784
Ответ: 469784 511
Задание 26 Груз(Решу ЕГЭ)
Для перевозки партии грузов различной массы выделен грузовик, но его грузоподъёмность ограничена, поэтому перевезти сразу все грузы не удастся. Грузы массой от 200 до 210 кг грузят в первую очередь, гарантируется, что все такие грузы поместятся. На оставшееся после этого место стараются взять как можно больше грузов. Если это можно сделать несколькими способами, выбирают тот способ, при котором самый большой из выбранных грузов имеет наибольшую массу. Если и при этом условии возможно несколько вариантов, выбирается тот, при котором наибольшую массу имеет второй по величине груз, и т. д. Известны количество грузов, масса каждого из них и грузоподъёмность грузовика. Необходимо определить количество и общую массу грузов, которые будут вывезены при погрузке по вышеописанным правилам.
Входные данные:

Первая строка входного файла содержит два целых числа: N — общее количество грузов и M — грузоподъёмность грузовика в кг. Каждая из следующих N строк содержит одно целое число — массу груза в кг.

Выходные данные:
В ответе запишите два целых числа: сначала максимально возможное количество грузов, затем их общую массу.
скачать >> 26 (5).txt
Решаем с помощью Excel
  1. Отрываем файл, копируем (Ctrl+A) и вставляем в Excel (Ctrl+V), перемещаем первую ячейку (N — общее количество грузов и M — грузоподъёмность грузовика в кг) и сортируем по возрастанию данные в столбце А
  2. выбираем диапазон от 200 до 210 кг, можно его скопировать и вставить в отдельный столбик. Подсчитаем сумму и количество груза.
  3. Находим массу груза без главного 10000-2669=7331. В столбце А выделяем диапазон, который на превышает полученное число, фиксируем количество (110) и массу последнего большого груза (123).
  4. Стараются взять как можно больше грузов, если это можно сделать несколькими способами, выбирают тот способ, при котором самый большой из выбранных грузов имеет наибольшую массу. Если и при этом условии возможно несколько вариантов, выбирается тот, при котором наибольшую массу имеет второй по величине груз, и т. д.
  5. Постараемся найти такой груз, что бы грузоподъемность была наибольшей и количество грузов не поменялось. Будем подбирать
Ответ: 123 10000