Python

Задача на питоне срочно

Имеется список из N элементов. Измените исходный список, поставив справа от каждого минимального элемента максимальный. Если максимум уже стоит справа от минимума, не добавляйте его повторно.

Формат входных данных
Вводится последовательность целых чисел через пробел – элементы списка.

Формат выходных данных
Вывести измененный список.

input :
5 0 4 3 0 2

output :
5 0 5 4 3 0 5 2
----
input :

-5 -5 -5 0 -5 -5 -5 -5 4 -5 -5

output :

-5 4 -5 4 -5 4 0 -5 4 -5 4 -5 4 -5 4 -5 4 -5 4

Жду ответа! Заранее спасибо!
Мы будем искать минимальное и максимальное число в списке и добавлять максимальное справа от каждого минимального числа. Если максимальное число уже находится справа от минимального, то мы его не добавляем. Мы продолжаем этот процесс, пока не дойдем до конца списка.

Принимаем ввод в виде строки и преобразуем его в список целых чисел:
python
Copy code
lst = list(map(int, input().split()))
Находим минимальное и максимальное число в списке:
python
Copy code
min_num = min(lst)
max_num = max(lst)
Проходимся по списку, добавляя максимальное число справа от каждого минимального числа:
python
Copy code
i = 0
while i < len(lst):
if lst[i] == min_num:
if i == len(lst) - 1 or lst[i+1] != max_num:
lst.insert(i+1, max_num)
i += 1
i += 1
Выводим измененный список:
python
Copy code
print(*lst)
Полный код:

python
Copy code
lst = list(map(int, input().split()))

min_num = min(lst)
max_num = max(lst)

i = 0
while i < len(lst):
if lst[i] == min_num:
if i == len(lst) - 1 or lst[i+1] != max_num:
lst.insert(i+1, max_num)
i += 1
i += 1

print(*lst)
Пример работы:

Input:

Copy code
5 0 4 3 0 2
Output:

Copy code
5 0 5 4 3 0 5 2
Input:

diff
Copy code
-5 -5 -5 0 -5 -5 -5 -5 4 -5 -5
Output:

diff
Copy code
-5 4 -5 4 -5 4 0 -5 4 -5 4 -5 4 -5 4 -5 4 -5 4
Асылбек Калжанов
Асылбек Калжанов
9 514
Лучший ответ
Сундет Бердибаев Спасибо! Помогли!
 numbers = list(map(int, input().split())) 

for i in range(len(numbers)):
if numbers[i] == min(numbers[i:]):
max_elem = max(numbers[i+1:])
if max_elem not in numbers[i+1:]:
numbers.insert(i+1, max_elem)

print(*numbers)