В файле содержится последовательность целых чисел.
Элементы последовательности могут принимать целые значения
Определите количество троек элементов, в которых из трех элементов тройки пятизначными числами являются только два, а сумма элементов тройки не больше максимального элемента последовательности, оканчивающегося
Ответ:
Приведём решение на языке Python.
count = 0
m = 0
f = open('17.txt')
l = [int(i) for i in f]
max_dvy = 0
for i in range(len(l)):
if l[i] % 100 == 29:
max_dvy = max(max_dvy, l[i])
for i in range(len(l) - 2):
c = 0
s = [l[i], l[i+1], l[i+2]]
for x in s:
if 9999 < abs(x) < 100000:
c += 1
if c == 2 and sum(s) <= max_dvy:
m = max(m, (l[i] + l[i+1] + l[i+2]))
count += 1
print(count, m)
В результате работы данного алгоритма при вводе данных из файла ответ — 157 973622.
Ответ: 157 973622.
Примечание.
Путь к файлу необходимо указать согласно расположению файла на Вашем компьютере.
Приведём решение Юрия Красильникова на языке Python.
a = [int(s) for s in open('1777.txt')]
m = max([x for x in a if abs(x)%100==29])
b = [sum(a[i:i+3]) for i in range(len(a)-2) if sum([(10000 <= abs(x) < 100000) for x in a[i:i+3]]) == 2 and sum(a[i:i+3]) <= m]
print(len(b),max(b))

