| 123456789101112131415161718192021222324 | 
							- class Solution {
 
-     public int findKthNumber(int n, int k) {
 
-         int cur = 1;
 
-         k--;
 
-         // Ten-ary tree
 
-         while (0 < k) {
 
-             int cnt = 0;
 
-             long lo = cur, hi = cur + 1;
 
-             while (lo <= n) {
 
-                 cnt += (int) (Math.min(hi, n + 1) - lo);
 
-                 lo *= 10;
 
-                 hi *= 10;
 
-             } // Count the number of children level by level
 
-             if (cnt <= k) {
 
-                 cur++; // Go to next child
 
-                 k -= cnt;
 
-             } else {
 
-                 cur *= 10; // Go to next level
 
-                 k--;
 
-             }
 
-         }
 
-         return cur;
 
-     }
 
- }
 
 
  |