В кондитерской есть N круглых форм для коржей. Специализация кондитерской – многоярусные торты, в которых диаметр каждого верхнего коржа меньше диаметра предыдущего. Один корж можно поместить на другой, если его диаметр хотя бы на 4 единицы меньше диаметра другого коржа. Определите наибольшее количество коржей, которое можно использовать для создания многоярусного торта, и максимально возможный диаметр самого маленького коржа.
Входные данные
В первой строке входного файла находится число N – количество форм для коржей в кондитерской (натуральное число,не превышающее 10 000). В следующих N строках находятся значения диаметров форм для коржей (все числа натуральные,не превышающие 10 000), каждое – в отдельной строке. Диаметр формы равен диаметру коржа, который выпекается в этой в форме.
Запишите в ответе два целых числа: сначала наибольшее количество коржей, которое можно использовать для создания одного многоярусного торта, затем – максимально возможный диаметр самого маленького коржа в таком торте.
Типовой пример организации данных во входном файле
5
43
40
32
40
30
Пример входного файла приведён для пяти коржей и случая, когда минимальная допустимая разница между диаметрами коржей, подходящих для изготовления многоярусного торта, составляет 3 единицы.
При таких исходных данных условию задачи удовлетворяют наборы коржей с диаметрами 30, 40 и 43 или 32, 40 и 43 соответственно, т.е. количество коржей равно 3, а максимально возможный диаметр самого маленького коржа равен 32.
Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемых файлов.
ФИПИ Открытый вариант КИМ ЕГЭ по информатике 2024 – задание №26
Решение:
Решение на Python
|
1 2 3 4 5 6 7 8 9 |
f = open('ege-inf-otkritiyVar2024-26.txt') n = int(f.readline()) a=[int(x) for x in f.readlines()] a.sort(reverse = True) ok=[a[0]] for x in a: if ok[-1]-x>=4: ok.append(x) print(len(ok), ok[-1]) |
ИЛИ
Решение на Excel
B2=ЕСЛИ(B1-A2>=4;A2;B1)
C2=ЕСЛИ(B2<>B1;C1+1;C1)
Ответ: 2172 50
