func_code_string: #include <bits/stdc++.h>   using namespace std;   long long solve(int n) {     if (n < 5) return n * (n - 1) / 2;     long long ans = 0;     int x = 0;     for (int i = 0; i <= 8; i++) {       int xx = 5 * pow(10, i);       if (n < xx) {         if (n < 2 * xx / 10) {           if (n != 2 * xx / 10 - 1)             return n - xx / 10 + 1;           else             return n - xx / 10;         }         x = i;         break;       }       if (i == 8) {         if (n < 1000000000) {           if (n != 999999999)             return n - 500000000 + 1;           else             return n - 500000000;         }         x = i + 1;         break;       }     }     int p = pow(10, x);     ans += (n / p) * (n / p) * (p / 2);     ans += (n % p) * (n / p);     if (n % p >= p / 2) ans += (n % p) - p / 2 + 1;     if (n % p == p - 1) ans--;     return ans;   }   int main() {     int n;     cin >> n;     long long ans = solve(n);     cout << ans;     return 0;   }   