题目
具体代码
class Solution {
public int findKthNumber(int n, int k) {
int prefix = 1;
int count = 1;
while(count < k){
int tmp = getNum(prefix,n);
if(tmp + count > k){
prefix *= 10;
count++;
}else{
prefix++;
count+=tmp;
}
}
return prefix;
}
public int getNum(long prefix,int n){
long cur = prefix;
long next = cur + 1;
int count = 0;
while(cur <= n){
count += Math.min(n+1,next)-cur;
cur *= 10;
next *= 10;
}
return count;
}
}