#include <stdio.h>
#include<math.h>
int main() {
int n = 0;
scanf("%d", &n);
int ret = 0;
int k = 1;//位数
int start = 1;
int count = 9;
while (n > count) {
n -= count;//有n个字符在k位数中
k++;
start *= 10;
count = 9 * k * start;
}
int num = start + (n - 1) / k;//n所在的数字
int pos = (n - 1) % k + 1;//求在数字的第几位
int div = pow(10, k - pos);
ret = (num / div) % 10;
printf("%d\n", ret);
return 0;
}

京公网安备 11010502036488号