.08 Макс/мин, кол-во пар, сумма/разность/произведение кратно/не кратно на расстоянии
Ошибка.
Попробуйте повторить позже
Космическая станция в течение N минут (N – целое число) ежеминутно снимает показания прибора, который измеряет количество пролетевших рядом метеоритов в условных единицах за минуту, предшествующую снятию показаний. Контрольным значением серии показаний называется сумма пары значений, каждое из которых является максимальным, если сравнивать его значение со всеми показаниями до него. Необходимо найти максимальное контрольное значение, при этом между показаниями должно пройти не более 8 минут.
Входные данные: Даны два входных файла: файл A и файл B, каждый из которых содержит в первой строке
количество чисел N ().В каждой из следующих N строк записано количество осадков –
неотрицательное целое число, не превышающее 10 000 000. Числа указаны в порядке снятия показаний прибора,
начиная с первой минуты.
Пример входного файла:
10
7
13
5
4
8
3
9
2
12
7
Для указанных входных данных значением искомой суммы должно быть число 20. В ответе укажите два числа через пробел: сначала максимальную сумму для файла А, затем для файла B.
# Пункт А f = open(’6_A__2qcvo.txt’) n = int(f.readline()) a = [int(i) for i in f] mx = -10 ** 20 for i in range(len(a) - 1): for j in range(i + 1, len(a)): # Проверяем, что разница между показаниями не больше 8 минут, и # первое и второе числа из пары являются максимальными по сравнению # со всеми предыдущими числами в последовательности if j - i <= 8 and (a[i] == max(a[:i + 1])) and (a[j] == max(a[:j + 1])): mx = max(mx, a[i] + a[j]) # обновляем максимальную сумму, если требуется print(mx) f = open(’6_B__2qcvp.txt’) n = f.readline() a = [int(i) for i in f] # Первое число последовательности больше - первый # подходящий максимум mx = a[0] # Индекс предыдущего максимума mx_ind = 0 mx_sum = 0 for i in range(1, len(a)): x = a[i] # Если x больше предыдущего максимума - # он больше всех предыдущих чисел if x >= mx: # Если расстояние до предыдущего максимума не # превышает 8 - эти два максимума можно объединить # в сумму if i - mx_ind <= 8: mx_sum = x + mx # Обновление последнего максимума и его индекса mx = x mx_ind = i print(mx_sum)
Специальные программы

Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение
Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!