printРабочее место участника

printЗадачи

1572. "Обходимые" числа

Ограничения: время – 1s/2s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

`N`-значным обходимым числом будем называть целое число из `N` различных цифр от 1 до 9, которое можно обойти по следующим правилам. Обход начинается с левой цифры, эта цифра показывает, сколько мы должны отсчитать цифр слева направо до следующей цифры, которая будет использована для следующего отсчета, и так далее. При необходимости переходим с правого края числа на левый. Обход заканчивается, если пройдены все цифры по одному разу и мы дошли снова до самой левой цифры.
Например, таким числом является 81362. Стартуем с цифры 8, отсчитывая 8 цифр, доходим до 6 (при этом переходим с правого края числа на левый), отсчитывая 6 цифр, доходим до 2, затем до 1, 3, и наконец снова попадаем на 8.
Во входном файле находится от 1 до 10 строк с одним целым числом `R` в строке. Число `R` содержит от 2 до 7 цифр. Для каждого такого числа найти наименьшее обходимое число равное или большее `R`. Входные данные подобраны так, чтобы такое число существовало. Входной файл заканчивается строкой с 0.

Пример ввода

12
123
1234
81111
82222
83333
911111
7654321
0

Пример вывода

13
147
1263
81236
83491
83491
913425
8124956
Источник: ACM North Central RC, 1996
loading