Statementâ–¼
Given two integers, n
and k
, return the [1, n]
when the numbers are sorted lexicographically.
Note: Lexicographical sorting means ordering numbers like words in a dictionary (alphabetical order)—digit by digit from left to right. For example, the numerical order of 1, 5, and 10 is [1, 5, 10], but their lexicographical order is [1, 10, 5].
Constraints:
1≤ k
≤ n
≤109
Solution
This problem aims to find the n
. Instead of generating and sorting all numbers from n
, which would be too slow for large n
, let’s take a smarter route by imagining these numbers arranged in a trie. Each node represents a number in a trie, and its children are formed by adding more digits to the end. For example, the root has children