Дано N-значное натуральное число X. Ваша задача - переставляя цифры числа X, получить наименьшее возможное N-значное число Y. Напишите программу для решение данной задачи
def smallest_number(x) # Преобразуем число в список циф digits = [int(d) for d in str(x) # Сортируем цифры по возрастани digits.sort( # Удаляем нули из списка цифр, если они ест while digits[0] == 0 digits.pop(0 # Собираем список цифр обратно в числ y = int(''.join(map(str, digits)) return # Вводим число x = int(input("Введите число X: ") # Получаем наименьшее возможное число y = smallest_number(x print("Наименьшее возможное число Y:", y)
Пример работы программы:
Введите число X: 89540 Наименьшее возможное число Y: 34589
# Преобразуем число в список циф
digits = [int(d) for d in str(x)
# Сортируем цифры по возрастани
digits.sort(
# Удаляем нули из списка цифр, если они ест
while digits[0] == 0
digits.pop(0
# Собираем список цифр обратно в числ
y = int(''.join(map(str, digits))
return
# Вводим число
x = int(input("Введите число X: ")
# Получаем наименьшее возможное число
y = smallest_number(x
print("Наименьшее возможное число Y:", y)
Пример работы программы:
Введите число X: 89540Наименьшее возможное число Y: 34589