В файле содержится последовательность натуральных чисел.
Элементы последовательности могут принимать целые значения
Ответ:
Приведём решение на языке 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 == 15:
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 999 < x < 10000:
c += 1
if c == 1 and sum(s) >= max_dvy:
m = max(m, (l[i] + l[i+1]+ l[i+2]))
count += 1
print(count, m)
В результате работы данного алгоритма при вводе данных из файла ответ — 299 196183.
Ответ: 299 196183.
Примечание.
Путь к файлу необходимо указать согласно расположению файла на Вашем компьютере.
Приведём решение Сергея Калугина на языке Python.
f = open('17.txt')
s = [int(x) for x in f]
cnt = 0
m = 0
maxi = 0
for i in range(len(s)):
if (s[i])%100 == 15:
maxi = max(maxi,s[i])
for i in range(len(s)-2):
if (len(str(s[i]))==4 and len(str(s[i+1]))!=4 and len(str(s[i+2]))!=4) or \
(len(str(s[i]))!=4 and len(str(s[i+1]))==4 and len(str(s[i+2]))!=4) or \
(len(str(s[i]))!=4 and len(str(s[i+1]))!=4 and len(str(s[i+2]))==4):
if (s[i]+s[i+1]+s[i+2])>=maxi:
cnt += 1
m = max(m,s[i]+s[i+1]+s[i+2])
print(cnt,m)

