Lang:G++
Edit1234567891011121314151617181920212223#include <iostream>#include <cmath>using namespace std;typedef long long ll;int main() {ll N;while (cin >> N) {ll n = N; // 剩余位数ll k = 1; // 几位数ll nums = 10; // 该k位数有多少个while (n - k * nums >= 0) {n -= k * nums;k++;if (k == 2) nums *= 9;else nums *= 10;}ll m = k == 1 ? 0 : pow(10, k - 1);ll nn = n / k + m;ll mm = n % k; // 第几位cout << (nn % ll(pow(10, k - mm))) / ll(pow(10, k - mm - 1)) << endl;}}