Задание №92726: Алгоритмы и программирование
Задание выполняется с использованием прилагаемых файлов. Пусть S – последовательность из N целых чисел, пронумерованных подряд начиная с 1. Обозначим S i , S j , S k три элемента последовательности S , где i < j < k . Определите в последовательности S три таких числа S i , S j , S k , что S i < S j , S k < S j и значение выражения ( S j – S i ) + ( S j – S k ) максимально. В ответе укажите найденное максимальное значение выражения ( S j – S i ) + ( S j – S k ). Гарантируется, что в последовательности есть три числа S i , S j , S k , удовлетворяющие условию задачи. Входные данные Дано два входных файла (файл A и файл B ), каждый из которых в первой строке содержит число N (5 ≤ N ≤ 10 000 000) – количество целых чисел . Каждая из следующих N строк содержит одно целое число, значение которого по модулю не превышает 1000 . В ответе укажите два числа: сначала значение искомой величины для файла А , затем – для файла B . Типовой пример организации данных во входном файле 9 30 3 7 8 2 6 1 20 21 При таких входных данных искомую максимальную сумму разностей образуют второй, четвёртый и седьмой элементы данной последовательности. Значение этой суммы разностей равно ( 8 – 3 ) + ( 8 – 1 ) = 12. Для седьмого, восьмого и девятого элементов последовательности искомая величина равна 18, но девятый элемент больше восьмого, что не удовлетворяет условию задачи. Ответом является число 12. Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемых файлов. Предупреждение: для обработки файла B не следует использовать переборный алгоритм, вычисляющий сумму для всех возможных вариантов, поскольку написанная по такому алгоритму программа будет выполняться слишком долго.
Что проверяет это задание
Задание относится к теме «Алгоритмы и программирование». Для решения понадобятся:
- формализация задачи
- построение алгоритма
- проверка граничных случаев
Источник: ФИПИ — открытый банк заданий
Качество материала
Показываем, из чего состоит страница и можно ли проверить материал по первоисточнику.
Происхождение задания
- Банк заданий
- ФИПИ — открытый банк заданий
- Организатор
- ФИПИ
- Материалы
- 2 файла
Связанные понятия
План самостоятельного решения
- Перепишите известные данные и отдельно сформулируйте, что требуется найти или доказать.
- Свяжите условие с темой «Алгоритмы и программирование» и выберите подходящее правило, формулу или способ рассуждения.
- Запишите промежуточные шаги: это помогает заметить потерянный знак, случай или логический переход.
- Сверьте результат со всеми ограничениями условия и только затем откройте подробный разбор.
Ориентировочное время: 25 минут.
Закрепить тему
После разбора попробуйте решить ещё десять заданий по предмету «Информатика». Вариант формируется заново, а ответы можно сразу проверить.
Решение по шагам
Самопроверка после решения
- Я использовал все данные из условия и не добавил неподтверждённых предположений.
- Каждый переход в рассуждении объяснён правилом, формулой или ранее доказанным фактом.
- Ответ соответствует вопросу, а обозначения и единицы измерения записаны однозначно.
- Я сравнил свой ход решения с разбором и понял причину каждого отличия.
Типичные ошибки
- Перепутать основание системы счисления.
- Не учесть границы диапазона.
- Проверить алгоритм только на одном примере.
/xs3qstsrc0939D6BDF24BB0D04AA0357D178688FE_6_1721383560.png)