Файл содержит последовательность натуральных чисел, не превышающих 100 000. Назовём тройкой три идущих подряд элемента последовательности.
Задание 17
Определите количество троек, для которых выполняются следующие условия:
— ровно два числа в тройке пятизначные;
— хотя бы одно число в тройке делится на 5;
— сумма элементов тройки больше максимального элемента последовательности, запись которого заканчивается на 321. (Гарантируется, что в последовательности есть хотя бы один элемент, запись которого заканчивается на 321.) В ответе запишите два числа: сначала количество найденных троек, затем максимальную величину суммы элементов этих троек.
Ответ:
Задание 17
Определите количество троек, для которых выполняются следующие условия:
— ровно два числа в тройке пятизначные;
— хотя бы одно число в тройке делится на 5;
— сумма элементов тройки больше максимального элемента последовательности, запись которого заканчивается на 321. (Гарантируется, что в последовательности есть хотя бы один элемент, запись которого заканчивается на 321.) В ответе запишите два числа: сначала количество найденных троек, затем максимальную величину суммы элементов этих троек.
Ответ:
💡 Пошаговый разбор и решение:
Приведём решение на языке Python.
a = [int(s) for s in open('1789.txt')]
a123 = max([x for x in a if x % 1000 == 321])
count = 0
s3 = []
for i in range (len(a) - 2):
if ((a[i] + a[i+1] + a[i+2]) > a123):
if ((a[i] % 5 == 0) + (a[i + 1] % 5 == 0) + (a[i + 2] % 5 == 0)) >= 1:
if (((len(str(a[i])) == 5) + (len(str(a[i + 1])) == 5) + (len(str(a[i + 2])) == 5))) == 2:
s3.append(a[i] + a[i+1] + a[i+2])
print(len(s3),max(s3))
В результате работы данного алгоритма при вводе данных из файла ответ — 269 198654.
Ответ: 269 198654.
a = [int(s) for s in open('1789.txt')]
a123 = max([x for x in a if x % 1000 == 321])
count = 0
s3 = []
for i in range (len(a) - 2):
if ((a[i] + a[i+1] + a[i+2]) > a123):
if ((a[i] % 5 == 0) + (a[i + 1] % 5 == 0) + (a[i + 2] % 5 == 0)) >= 1:
if (((len(str(a[i])) == 5) + (len(str(a[i + 1])) == 5) + (len(str(a[i + 2])) == 5))) == 2:
s3.append(a[i] + a[i+1] + a[i+2])
print(len(s3),max(s3))
В результате работы данного алгоритма при вводе данных из файла ответ — 269 198654.
Ответ: 269 198654.
Правильный ответ:
269&198654
📚 Похожие разобранные задания по предмету:
ID 29278 • Задание №1
На рисунке схема дорог изображена в виде графа, в таблице содержатся сведения о длине этих дорог в километрах....
ID 34103 • Задание №24
Требовалось написать программу, при выполнении которой с клавиатуры считывается координата точки на прямой (х ...
🔗 Другие задания линии №17 по предмету Информатика:
ID 32783
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать ...
ID 32784
В файле содержится последовательность из 10 000 натуральных чисел. Каждое число не превышает 10...
ID 32785
В файле содержится последовательность из 10 000 целых положительных чисел. Каждое число не прев...
ID 32786
В файле содержится последовательность из 10 000 целых положительных чисел. Каждое число не прев...
ID 32787
В файле содержится последовательность из 10 000 целых положительных чисел. Каждое число не прев...