#include <string>
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param n int整型
* @return int整型
*/
int findNthDigit(int n) {
long long len = 1; // 当前位数1 2 3
long long count = 9;//个数 9 90 900
long long start = 1; // 起始数字1 10 100
while(n > len * count)
{
n -= len * count;
len ++;
count *= 10;
start *= 10;
}
long long num = start + (n - 1) / len; // 找到数字在当前位数内的具体位置
int numPos = (n - 1) % len;
string numStr = to_string(num);
return numStr[numPos] - '0';
}
};

京公网安备 11010502036488号