存个很强的模板,貌似已经快到(O(logn))了
ll n, k, cnt = 1;
scanf("%lld %lld", &n, &k);
k--;
while(k){
ll st = 0, head = cnt, tail = cnt + 1;
while(head <= n){
st += min(n + 1, tail) - head;
head *= 10;
tail *= 10;
}
if(st <= k){
++cnt;
k -= st;
}else{
cnt *= 10;
--k;
}
}
printf("%lld\n",cnt);