class Solution {
fun findNthDigit(x: Int): Int {
var n = 1
var sum = 0
while (true) {
val d: Int = ((9 * 10.toDouble().pow(n - 1)) * n).toInt()
if (x > d) {
println("==$d")
sum += d
n += 1
continue
} else {
break
}
}
println("$n 在几位数里")
println("$sum 总数,上一位数的总和")
val numSum: Int = (10.toDouble().pow(n - 1) - 1).toInt()
println("${n - 1} 位数自然数的总和 $numSum")
val num = (x - sum) / n
val yu = (x - sum) % n
println("num== $num yu== $yu")
if (yu == 0) {
val temp = numSum + num
val toCharArray = temp.toString().toCharArray()
return toCharArray[toCharArray.size - 1].toString().toInt()
} else {
val temp = numSum + num + 1
val toCharArray = temp.toString().toCharArray()
return toCharArray[toCharArray.size - 1 - (n - yu)].toString().toInt()
}
}
}