#include <iostream>
#include <string>
#include <cmath>

using namespace std;

int main() {
    long long n;
    cin >> n;

    long long digits = 1;      // 当前处理的数字的位数
    long long count = 9;       // 当前位数下有多少个不同的数字
    long long start_num = 1;   // 当前位数下的起始数字

    while (n > digits * count) {
        n -= digits * count;
        digits++;
        count *= 10;
        start_num *= 10;
    }

    // 确定目标字符所在的具体数字
    long long target_num = start_num + (n - 1) / digits;

    // 确定目标字符在该数字的第几位 (0-based)
    long long digit_index = (n - 1) % digits;

    // 提取该位数字
    string s_num = to_string(target_num);
    cout << s_num[digit_index] << endl;

    return 0;
}