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

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

Задание выполняется с использованием прилагаемых файлов. По каналу

Условие

Задание выполняется с использованием прилагаемых файлов.

По каналу связи передаётся последовательность целых чисел — показания прибора, полученные с интервалом 1 мин. в течение N мин. (N — натуральное число). Прибор измеряет значение заряда частиц, полученное регистратором за минуту, предшествующую моменту регистрации, и передаёт это значение в условных единицах измерения.

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

Файл АФайл ВВходные данные.

Даны два входных файла (файл А и файл В), каждый из которых в первой строке содержит натуральное число K — минимальное количество минут, которое должно пройти между — двумя передачами показаний, а во второй — количество переданных показаний N (1 ≤ N ≤ 10 000 000, N > K). В каждой из следующих N строк находится одно целое число, по модулю не превышающее 100 000, обозначающее числовое значение заряда частиц в минуту.

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

Запишите в ответе два числа: сначала значение искомой величины для файла A, затем — для файла B. Ответ:

Ответ

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

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

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

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

    Решение. Приведём решение на языке Python. f = open('27.txt')K = int(f.readline())N = int(f.readline())a = [int(x) for x in f]m = 0maxi = 0for i in range(K,N): #перебираем числа начиная с К, так как между измерениями прошло менее K минут m = max(m, a[i-K]) #выбираем максимальное измерение на расстоянии не менее К maxi = max(maxi, a[i] * m) #определяем максимальное произведение измеренийprint(maxi) В результате работы данного алгоритма при вводе данных из файла A ответ — 9992901218, из файла B —

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

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

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

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

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