Ctrl K

k-е число в словарном порядке

Сложная
Выпишем все целые числа от 1 до limit и упорядочим их как строки — так, как слова стоят в словаре: сначала сравнивается первая цифра, потом вторая и так далее, а более короткое число идёт раньше, если оно начало более длинного. Например, 1 < 10 < 100 < 11 < 2. Верните число, которое окажется на k-м месте (нумерация с единицы). Выписать весь список не выйдет: limit бывает до миллиарда.
Пример 1
limit=15, k=4 → 12

В словарном порядке числа от 1 до 15 идут так: 1, 10, 11, 12, 13, 14, 15, 2, 3, … Четвёртое — 12.

Пример 2
limit=20, k=13 → 20

Порядок: 1, 10, …, 19, 2, 20, 3, … — тринадцатым идёт 20.

Пример 3
limit=7, k=7 → 7
Ограничения
  • 1 ≤ k ≤ limit ≤ 10⁹
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиВсе способы расставить пробелы СложнаяСлова в буквенной сетке СложнаяСклеить в палиндром СложнаяЗеркальные блоки из слов СложнаяСлова из других слов Сложная
загружаем Python…
Вход
limit=15, k=4
Ожидается
12

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 94 теста на сервере, включая скрытые.