#include <bits/stdc++.h>
using namespace std;
long long q, k, n, a[100001], cum[100001];
long long cmp(long long x, long long y) { return x > y; }
long long rec(long long st, long long pro, long long lim, long long lev) {
  if (st > n) return 0;
  long long next = min(n, st + lim - 1);
  return rec(next + 1, pro, lim * pro, lev + 1) + cum[next] * lev -
         cum[st - 1] * lev;
}
int main() {
  int i, j;
  cin >> n;
  for (i = 1; i <= n; i++) {
    cin >> a[i];
  }
  sort(&a[1], &a[n + 1], cmp);
  cum[0] = 0;
  for (i = 1; i <= n; i++) {
    cum[i] = cum[i - 1] + a[i];
  }
  long long one = 0;
  for (i = 1; i <= n; i++) {
    one += a[i] * (i - 1);
  }
  cin >> q;
  for (i = 1; i <= q; i++) {
    cin >> k;
    if (k == 1) {
      cout << one;
      if (q != i) cout << " ";
    } else
      cout << rec(2, k, k, 1);
    if (q != i) cout << " ";
  }
  cout << endl;
  return 0;
}
