#include <bits/stdc++.h>

using namespace std;
long long cnt(string & R, int n, bool cap) {
    if (!cap) {
        return pow(10, n) + 0.1;

    }

    if (n == 0)
        return 1;

    long long numbers = 0;
    int ub = R[R.length() - n] - '0';

    for (int dig = 0; dig <= ub; dig++)
        numbers += cnt(R, n - 1, cap & (dig == ub));

    return numbers;


}
long long helper(string & R, int n, int cap) {

    if (!n) return 0; // base case when our length get's exhausted.

    long long ans = 0;
    int ub = (cap) ? R[R.length() - n] - '0' : 9;
    // cout << idx << " " << ub << " " << endl;


    for (int dig = 0; dig <= ub; dig++) {
        ans += dig * cnt(R, n - 1, cap & (dig == ub));
        ans += helper(R, n - 1, cap & (dig == ub));

    }


    return ans;

}
int main() {
    string L = "0", R = "15";
    cout << helper(R, R.length(), 1);


}