Присоединиться

11 класс·средний уровень

Дана последовательность натуральных чисел. Необходимо найти максимально

Условие

Дана последовательность натуральных чисел. Необходимо найти максимально возможную сумму её непрерывной подпоследовательности, в которой количество чётных элементов кратно k = 10. Входные данные.

Файл AФайл BПервая строка входного файла содержит целое число N — общее количество чисел в наборе. Каждая из следующих N строк содержит одно число. Гарантируется, что общая сумма всех чисел не превышает 2 · 10⁹.Вам даны два входных файла (A и B), каждый из которых имеет описанную выше структуру. В ответе укажите два числа: сначала значение искомой суммы для файла A, затем для файла B. Ответ:

Ответ

Ответ и полный разбор откроются после входа

Посмотреть ответ

Решение по шагам

  1. Как рассуждать

    Решение. Приведём решение на языке Python. f = open("27-B.txt")n = int(f.readline())lefts = [0 for i in range(10)]rights = [0 for i in range(10)]for i in range(10): lefts[i] = 0 rights[i] = 0count = 0sum = 0for i in range(1, n + 1): num = int(f.readline()) sum = sum + num if num % 2 == 0: count = count + 1 d = count % 10 if lefts[d] == 0: lefts[d] = sum rights[d] = summaxsum = 0if count % 10 == 0: print(sum)else: for i in range(1, count % 10 + 1): if (rights[i] - lefts[i]) > maxsum: maxsum = rights[i] - lefts[i]if rights[0] > maxsum: maxsum = rights[0]print(maxsum)

Осталось ещё 2 шага

  1. Примечание. Путь к файлу необходимо указать…

  2. do if (rights[i] - lefts[i]) > maxsum then…

Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Программирование»

Дана последовательность натуральных чисел. Необходимо найти максимально — решение с объяснением | Lom Ai