#include <bits/stdc++.h>
using namespace std;
long long calc(long long a, int from) {
  long long e = a / from;
  long long add = a % from;
  return e * e * (from - add) + (e + 1) * (e + 1) * add;
}
long long get(long long a, int from) {
  if (a < from) {
    return -1;
  }
  return calc(a, from) - calc(a, from + 1);
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(nullptr);
  cout.tie(nullptr);
  int n, k;
  cin >> n >> k;
  long long res = 0;
  multiset<pair<long long, pair<int, int>>> carrots;
  for (int i = 0; i < n; i++) {
    long long e;
    cin >> e;
    res += 1LL * e * e;
    carrots.insert(make_pair(-get(e, 1), make_pair(e, 1)));
  }
  for (int i = 0; i < k - n; i++) {
    auto it = carrots.begin();
    carrots.erase(carrots.begin());
    res += it->first;
    auto p = it->second;
    p.second++;
    carrots.insert(
        make_pair(-get(p.first, p.second), make_pair(p.first, p.second)));
  }
  cout << res << endl;
  return 0;
}
