17.01 Обработка пар элементов последовательности
Ошибка.
Попробуйте повторить позже
В файле содержится последовательность целых чисел. Элементы последовательности могу принимать целые
значения от до
включительно. Определите и запишите в ответе сначала количество пар элементов, в
которых предпоследняя цифра произведения равна
, затем максимальную сумму, кратную
, в таких
парах, если ее нет, напишите
. В данной задаче под парой подразумевается два идущих подряд элемента
последовательности.
Например для последовательности из шести элементов:
Ответ:
Решение программой
Программа перебирает все пары подряд идущих чисел из файла. Для каждой пары сначала вычисляется произведение элементов. Чтобы найти предпоследнюю цифру произведения, берём остаток от деления произведения на 100 — это последние две цифры числа — и затем целочисленно делим результат на 10, чтобы выделить именно предпоследнюю цифру. Если эта цифра равна 7, значит пара подходит по первому условию, и мы увеличиваем счётчик таких пар.
Далее для таких пар проверяется второе условие: сумма элементов должна быть кратна 77. Если это условие выполнено, обновляем максимальную сумму среди всех подходящих пар.
Если ни одной пары с подходящей суммой не найдено, по условию выводим 0 вместо максимума. В конце программа выводит количество таких пар и максимальную сумму.
f = open(’17.txt’) n = 1000000 # Считываем n чисел из файла a = [int(f.readline()) for i in range(n)] # Счётчик пар с предпоследней цифрой произведения равной 7 k = 0 # Максимальная сумма, кратная 77, среди таких пар ma = -10**19 for i in range(n-1): # Вычисляем предпоследнюю цифру произведения пары if (((a[i] * a[i + 1]) % 100) // 10) == 7: k += 1 # Проверяем, что сумма кратна 77 и обновляем максимум if (a[i] + a[i + 1]) % 77 == 0: ma = max(ma, a[i] + a[i + 1]) print(k, ma)
Специальные программы

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

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

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

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

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

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