#include<cmath>
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param n int整型 
     * @return int整型
     */
    int findNthDigit(int n) {
       vector<long long> v;
       v.resize(10);
       v[0]=pow(10,1);
       for(int i=1;i<10;i++)
       {
            v[i]=v[i-1]+(pow(10,(i+1))-pow(10,i))*(i+1);
       }
       long long i=0;
       for(long long x:v)
       {
        if(n>=x)
        {
            i+=1;
        }
       }
       if(i==0)
       {
        return n;
       }
       long long minus=n-v[i-1];
       long long a=minus/(i+1);
       long long b=minus%(i+1);
       long long number=pow(10,i)+a;

       return to_string(number)[b]-'0';
    }
};