Nth Digit LeetCode solution in C++
1class Solution {2public:3#define ll long long4int findNthDigit(int n) {5if (n <= 9) return n;6ll i = 1;7ll sum = 0;8while (true) {9ll a = (9 * pow(10, i - 1)) * i;10if (n - a < 0) {11break;12} else {13sum += 9 * pow(10, i - 1);14n -= a;15}16i++;17}1819ll x = 0;20ll mod = n % i;21n = (n / i);22n += sum;23if (mod == 0)24return n % 10;25else {26n++;27ll x = i - mod;28while (x--) {29n /= 10;30}31}32return n % 10;33}34};