Условие:
Колокол
(Время: 0,4 сек. Память: 16 Мб Сложность: 28%)
Требуется написать программу, которая в массиве из n целых чисел наименьший элемент поместит на первое место, наименьший из оставшихся – на последнее, следующий по величине – на второе место, следующий – на предпоследнее и так далее – до середины массива.
Входные данные
Во входном файле записано в первой строке число n (1 ≤ n ≤ 30000). Во второй строке записаны через пробел элементы массива, числа по абсолютной величине не большие 32767.
Выходные данные
В единственную строку выходного файла нужно вывести элементы полученного массива, разделенные одним пробелом.
Пример
№ INPUT.TXT OUTPUT.TXT
1 5
1 2 3 4 5 1 3 5 4 2 ( НА PYTHON)
Решение:
Для решения задачи, нам нужно выполнить следующие шаги:
1. Прочитать входные данные: количество элементов массива n и сам массив.
2. Отсортировать массив, чтобы получить элементы в порядке возрастания.
3. Создать новый массив, в который будем помещать элементы в нужном порядке: наименьший элемент на первое место, наименьший из оставшихся на последнее место, следующий по величине на второе место и так далее.
4. Вывести полученный массив.
Теперь давайте реализуем это на Python.
Шаг 1: Чтение входных данных
Мы будем использовать стандартный ввод для чтения данных. Сначала считываем количество элементов, затем сам массив.
Сортируем массив, чтобы получить элементы в порядке возрастания. Создадим новый массив, в который будем помещать элементы в нужном порядке. Мы будем использовать два указателя: один для начала отсортированного массива и другой для конца. Наконец, мы выводим элементы нового массива, разделенные пробелами. Теперь объединим все части в один код: Если мы введем: Вывод будет: Таким образом, программа корректно выполняет поставленную задачу.
