#include <bits/stdc++.h>
#define int long long
using namespace std;
void solve() {
int n;
cin >> n;
vector<int> k(n);
vector<pair<int, int>> ans(n);
for (int i = 0; i < n; i++) {
int p;
cin >> p;
ans[i] = {p, i};
}
sort(ans.begin(), ans.end(), greater<pair<int, int>>());
vector<int> p_sum(n + 1, 0);
p_sum[n - 1] = ans[n - 1].first;
for (int i = n - 2; i >= 0; i--) {
p_sum[i] = p_sum[i + 1] + ans[i].first;
}
vector<int> s;
for (int i = 0; i < n; i++) {
int f = p_sum[i + 1] + ans[i].first;
int id = 0;
int h = f;
auto it = upper_bound(s.begin(), s.end(), h);
id = distance(s.begin(), it);
k[ans[i].second] = (n - i - 1) + id;
s.insert(upper_bound(s.begin(), s.end(), ans[i].first), ans[i].first);
}
for (int i = 0; i < n; i++) {
cout << k[i] << " ";
}
cout << endl;
}
signed main() {
int t;
cin >> t;
while (t--) {
solve();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgaW50IGxvbmcgbG9uZwp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdm9pZCBzb2x2ZSgpIHsKICAgIGludCBuOwogICAgY2luID4+IG47CiAgICB2ZWN0b3I8aW50PiBrKG4pOwogICAgdmVjdG9yPHBhaXI8aW50LCBpbnQ+PiBhbnMobik7CiAgICAKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgaW50IHA7CiAgICAgICAgY2luID4+IHA7CiAgICAgICAgYW5zW2ldID0ge3AsIGl9OwogICAgfQogICAgCiAgICBzb3J0KGFucy5iZWdpbigpLCBhbnMuZW5kKCksIGdyZWF0ZXI8cGFpcjxpbnQsIGludD4+KCkpOwogICAgCiAgICB2ZWN0b3I8aW50PiBwX3N1bShuICsgMSwgMCk7CiAgICBwX3N1bVtuIC0gMV0gPSBhbnNbbiAtIDFdLmZpcnN0OwogICAgCiAgICBmb3IgKGludCBpID0gbiAtIDI7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgcF9zdW1baV0gPSBwX3N1bVtpICsgMV0gKyBhbnNbaV0uZmlyc3Q7CiAgICB9CiAgICAKICAgIHZlY3RvcjxpbnQ+IHM7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykgewogICAgICAgIGludCBmID0gcF9zdW1baSArIDFdICsgYW5zW2ldLmZpcnN0OwogICAgICAgIGludCBpZCA9IDA7CiAgICAgICAgaW50IGggPSBmOwogICAgICAgIGF1dG8gaXQgPSB1cHBlcl9ib3VuZChzLmJlZ2luKCksIHMuZW5kKCksIGgpOwogICAgICAgIGlkID0gZGlzdGFuY2Uocy5iZWdpbigpLCBpdCk7CiAgICAgICAgCiAgICAgICAga1thbnNbaV0uc2Vjb25kXSA9IChuIC0gaSAtIDEpICsgaWQ7CiAgICAgICAgcy5pbnNlcnQodXBwZXJfYm91bmQocy5iZWdpbigpLCBzLmVuZCgpLCBhbnNbaV0uZmlyc3QpLCBhbnNbaV0uZmlyc3QpOwogICAgfQogICAgCiAgICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykgewogICAgICAgIGNvdXQgPDwga1tpXSA8PCAiICI7CiAgICB9CiAgICBjb3V0IDw8IGVuZGw7Cn0KCnNpZ25lZCBtYWluKCkgewogICAgCiAgICBpbnQgdDsKICAgIGNpbiA+PiB0OwogICAgd2hpbGUgKHQtLSkgewogICAgICAgIHNvbHZlKCk7CiAgICB9CiAgICByZXR1cm4gMDsKfQ==