func_code_string: #include <bits/stdc++.h>   using namespace std;   const long long inf = 1e9 + 7;   const long long INF = 1LL << 60;   const long long mod = 1e9 + 7;   const long double eps = 1e-8;   const long double pi = acos(-1.0);   template <class T>   inline bool chmax(T& a, T b) {     if (a < b) {       a = b;       return 1;     }     return 0;   }   template <class T>   inline bool chmin(T& a, T b) {     if (a > b) {       a = b;       return 1;     }     return 0;   }   long long f(long long l, long long p) {     long long w = l / p;     long long p2 = l % p, p1 = p - p2;     return p1 * w * w + p2 * (w + 1) * (w + 1);   }   void solve() {     long long n, k;     cin >> n >> k;     vector<long long> a(n);     long long ans = 0;     priority_queue<pair<long long, pair<long long, long long>>> pque;     for (long long i = 0; i < n; i++) {       cin >> a[i];       ans += a[i] * a[i];       pque.push({f(a[i], 1) - f(a[i], 2), {a[i], 2}});     }     for (long long i = 0; i < k - n; i++) {       auto x = pque.top();       pque.pop();       ans -= x.first;       long long l = x.second.first, p = x.second.second;       pque.push({f(l, p) - f(l, p + 1), {l, p + 1}});     }     cout << ans << endl;   }   signed main() {     ios::sync_with_stdio(false);     cin.tie(0);     solve();     return 0;   }   