func_code_string: #include <bits/stdc++.h>   using namespace std;   vector<long long int> f(200005, 0), d(200005, 0), l(200005, 0), r(200005, -1);   map<pair<long long int, long long int>, long long int> mp;   long long int gcd(long long int a, long long int b) {     if (b == 0) return a;     return gcd(b, a % b);   }   long long int bpow(long long int a, long long int b) {     long long int res = 1;     while (b > 0) {       if (b & 1) res = (res * a) % 1000000007;       a = (a * a) % 1000000007;       b >>= 1;     }     return res % 1000000007;   }   void fact(long long int i) {     f[0] = 1;     for (long long int k = 1; k <= i; k++) {       (f[k] = f[k - 1] * k) %= 1000000007;     }   }   long long int isprime(long long int n) {     if (n == 1) return 0;     for (long long int i = 2; i <= sqrt(n); i++)       if (n % i == 0) return 0;     return 1;   }   long long int find(long long int x) {     if (f[x] == x)       return x;     else       return f[x] = find(f[x]);   }   bool cmp(long long int x, long long int y) { return x < y; }   long long int comb(long long int i, long long int j) {     long long int k = f[i];     long long int g = (f[j] * (f[i - j])) % 1000000007;     long long int h = bpow(g, 1000000007 - 2);     return (k * h) % 1000000007;   }   int main() {     ios_base::sync_with_stdio(false);     cin.tie(NULL);     cout.tie(NULL);     long long int n;     cin >> n;     vector<long long int> a(n);     for (long long int i = 0; i < n; i++) cin >> a[i];     long long int mx = 0;     for (long long int i = 0; i < n; i++) {       mx = max(mx, a[i]);     }     for (long long int i = 0; i < n; i++) {       long long int k = a[i], c = 0;       while (k > 0) {         f[k]++;         r[k] = i;         l[k] += (c);         long long int h = k, j = c;         while (h <= mx) {           h *= 2;           j++;           if (r[h] != i) {             f[h]++;             r[h] = i;             l[h] += j;           } else             break;         }         k /= 2;         c++;       }     }     long long int ans = 1e18;     for (long long int i = 1; i <= 100000; i++) {       if (f[i] == n) {         ans = min(ans, l[i]);       }     }     cout << ans <<   n ;   }   