Задание 17. Информатика. ЕГЭ. Статград. 28.01.2025-1
- Просмотры: 1038
- Изменено: 1 февраля 2025
Файл содержит последовательность натуральных чисел, не превышающих \(100~000.\) Назовём тройкой три идущих подряд элемента последовательности. Определите количество троек, для которых выполняются следующие условия:
- в тройке есть четырёхзначные числа;
- в тройке не более одного числа, у которого остаток от деления на \(5\) равен остатку от деления на \(5\) минимального элемента всей последовательности;
- в тройке не менее двух чисел, у которых остаток от деления на \(7\) равен остатку от деления на \(7\) максимального элемента всей последовательности.
В ответе запишите два числа: сначала количество найденных троек, затем максимальную величину суммы элементов этих троек.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
r5 = min(nums) % 5
r7 = max(nums) % 7
q = 0
max_sum = 0
for tr in zip(nums, nums[1:], nums[2:]):
if any(999 < x < 10_000 for x in tr) and sum(x % 5 == r5 for x in tr) < 2 \
and sum(x % 7 == r7 for x in tr) > 1:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(103 \,\, 194888\)