第N个数
class Solution {
public:
int findNthDigit(int n) {
//使用什么方法呢???对于这种题型的话需要好好考虑一下子
long num = n;
int count = 1;
long fanwei = 9 * pow(10,(count - 1))*1;
while (num>fanwei)
{
num = num - fanwei;
++count;//加1
fanwei = 9 * pow(10,count-1)*count;
}
//现在得到的是在某个范围内的第几个数字
long shuzi = 0;
int bianli = 0;
bianli = num%count;
if (num%count != 0)
{
++shuzi;
}
if (count == 1)
return num;
shuzi = shuzi + num / count + pow(10,count - 1)-1;
string ss = to_string(shuzi);
if (bianli == 0)
bianli = count;
char result=ss[bianli-1];
int result_1 = result - '0';
return result_1;
}
};