Представляет числа в виде строк цифр. N и M - это две строки одинаковой длины.
Давайте наберем N цифр как N k , где N 0 является последним ( крайняя справа) цифра.
Набор M 0 = N 0 - 1, M 1 = N 1 + 1, M i = N i в противном случае. Сумма цифр M остается такой же, как в N , потому что вы только что переместили 1 из одной цифры в другую, но теперь M > * +1049 * N . * * тысяча пятьдесят-одна
Конечно, этот трюк не работает, если N 0 = 0 или если N 1 = 9. В этом случае , перейти к N 1 и N 2 для передачи 1 и т. д.
В качестве упражнения докажите, что M , созданный таким образом, действительно является наименьшим числом, удовлетворяющим условиям. (Или опровергнуть - я могу ошибаться, особенно в случае N 0 = 0, хотя я не понимаю, где я ошибаюсь.)