func_code_string: #include <bits/stdc++.h>   using namespace std;   long long a[18] = {0};   long long int get(long long int n, int l) {     if (!n) return 0;     if (l == 1) return n;     long long int t = a[l];     if (n == t) return l;     if (n < t)       return min(get(n, l - 1), l + get(t - n, l - 1));     else       return min((n / t) * l + get(n % t, l - 1),                  ((1 + (n / t)) * l) + get(t - n % t, l - 1));   }   int main() {     long long int n, i, ans;     scanf( %I64d , &n);     for (int i = 1; i < 18; i++) a[i] = a[i - 1] * 10 + 1;     for (i = 1; n > a[i]; i++)       ;     ans = get(n, i);     printf( %I64d n , ans);     return 0;   }   