Файл содержит последовательность натуральных чисел, не превышающих 100 000. Назовём тройкой три идущих подряд элемента последовательности. Определите количество троек, для которых выполняются следующие условия:
– ровно два числа в тройке четырёхзначные;
– хотя бы одно число в тройке делится на 3;
– сумма элементов тройки больше максимального элемента последовательности, запись которого заканчивается на 19. (Гарантируется, что в последовательности есть хотя бы один элемент, запись которого заканчивается на 19.)
В ответе запишите два числа: сначала количество найденных троек, затем максимальную величину суммы элементов этих троек.
Ответ:
(количество найденных троек) (максимальную величину суммы элементов этих троек)
СтатГрад Вариант ИН2310101 24 октября 2023 – задание №17
Решение:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
f = open('ege-statgrad-24102023-17.txt') a = [int(x) for x in f.readlines()] mx = 0 for i in range(len(a)): if a[i]>mx and a[i]%100 == 19: mx=a[i] k=0 m=0 for i in range(len(a)-2): if len(str(a[i]))==4 and len(str(a[i+1]))==4 and len(str(a[i+2]))!=4 or \ len(str(a[i]))==4 and len(str(a[i+1]))!=4 and len(str(a[i+2]))==4 or\ len(str(a[i]))!=4 and len(str(a[i+1]))==4 and len(str(a[i+2]))==4: if a[i]%3==0 or a[i+1]%3==0 or a[i+2]%3==0: if a[i]+a[i+1]+a[i+2]>mx: k+=1 m=max(m,a[i]+a[i+1]+a[i+2]) print(k, m) |
Ответ: 78 115709
