Задания
Версия для печати и копирования в MS Word
Тип 27 № 59732
i

В тек­сто­вом файле со­дер­жит­ся не­ко­то­рое ко­ли­че­ство на­ту­раль­ных чисел. Опре­де­ли­те и за­пи­ши­те в ответ мак­си­маль­ную сумму трех чисел, чтобы любые два числа на­хо­ди­лись на рас­сто­я­нии не менее К друг от друга.

Вход­ные дан­ные.

Файл А

Файл В

Пер­вая стро­ка файла со­дер­жит число k  — рас­сто­я­ние между эле­мен­та­ми, вто­рая стро­ка файла со­дер­жит со­дер­жит ко­ли­че­ство эле­мен­тов в файле.

 

Ответ:

Спрятать решение

Ре­ше­ние.

При­ведём ре­ше­ние на языке Python.

f = open('1_27_B.txt')

k = int(f.readline())

n = int(f.readline())

a = [int(x) for x in f]

st = 0

fin = 0

summa = 0

for i in range(2*k,n):

st = max(st, a[i-2*k])

fin = max(fin, st + a[i-k])

summa = max(summa, fin + a[i])

print(summa)

 

В ре­зуль­та­те ра­бо­ты дан­но­го ал­го­рит­ма при вводе дан­ных из файла A ответ  — 2411, из файла B  — 10713426.

 

Ответ: 2411  10713426.

 

При­ме­ча­ние.

Путь к файлу не­об­хо­ди­мо ука­зать со­глас­но рас­по­ло­же­нию файла на Вашем ком­пью­те­ре.

Источник: ЕГЭ по ин­фор­ма­ти­ке 19.06.2023. Ос­нов­ная волна