#include <bits/stdc++.h>
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")
#define endl "\n"
#define int long long
#define double long double
#define __builtin_popcount __builtin_popcountll
#define join(z, x, y); merge(begin(x), end(x), begin(y), end(y), back_inserter(z));
#define FastIO(); ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
using namespace std;
const int MAXN = 300003;
const int BASE1 = 311;
const int BASE2 = 997;
const int INF = (int)1e18;
int n, a[MAXN], seg[4 * MAXN];
void update(int i, int l, int r, int pos){
if(l == r){
seg[i] += 1;
}
else{
int m = l + r >> 1;
if(pos <= m){
update(2 * i, l, m, pos);
}
else{
update(2 * i + 1, m + 1, r, pos);
}
seg[i] = seg[2 * i] + seg[2 * i + 1];
}
}
int get(int i, int l, int r, int u, int v){
if(u > r || v < l) return 0;
if(u <= l && r <= v) return seg[i];
int m = l + r >> 1;
return get(2 * i, l, m, u, v) + get(2 * i + 1, m + 1, r, u, v);
}
signed main() {
FastIO();
cin >> n;
for(int i = 0; i < n; i++){
cin >> a[i];
}
int cnt = 0;
for(int i = 0; i < n; i++){
cnt += get(1, 0, n - 1, a[i] + 1, n - 1);
update(1, 0, n - 1, a[i]);
}
cout << cnt << endl;
for(int i = 0; i < n - 1; i++){
cnt += n - 1 - 2 * a[i];
cout << cnt << endl;
}
return (0 ^ 0);
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNwcmFnbWEgR0NDIG9wdGltaXplKCJPMyx1bnJvbGwtbG9vcHMiKQojcHJhZ21hIEdDQyB0YXJnZXQoImF2eDIsYm1pLGJtaTIsbHpjbnQscG9wY250IikKI2RlZmluZSBlbmRsICJcbiIKI2RlZmluZSBpbnQgbG9uZyBsb25nCiNkZWZpbmUgZG91YmxlIGxvbmcgZG91YmxlCiNkZWZpbmUgX19idWlsdGluX3BvcGNvdW50IF9fYnVpbHRpbl9wb3Bjb3VudGxsCiNkZWZpbmUgam9pbih6LCB4LCB5KTsgbWVyZ2UoYmVnaW4oeCksIGVuZCh4KSwgYmVnaW4oeSksIGVuZCh5KSwgYmFja19pbnNlcnRlcih6KSk7CiNkZWZpbmUgRmFzdElPKCk7IGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7IGNpbi50aWUoMCk7IGNvdXQudGllKDApOwp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY29uc3QgaW50IE1BWE4gPSAzMDAwMDM7CmNvbnN0IGludCBCQVNFMSA9IDMxMTsKY29uc3QgaW50IEJBU0UyID0gOTk3Owpjb25zdCBpbnQgSU5GID0gKGludCkxZTE4OwoKaW50IG4sIGFbTUFYTl0sIHNlZ1s0ICogTUFYTl07Cgp2b2lkIHVwZGF0ZShpbnQgaSwgaW50IGwsIGludCByLCBpbnQgcG9zKXsKICAgIGlmKGwgPT0gcil7CiAgICAgICAgc2VnW2ldICs9IDE7CiAgICB9CiAgICBlbHNlewogICAgICAgIGludCBtID0gbCArIHIgPj4gMTsKICAgICAgICBpZihwb3MgPD0gbSl7CiAgICAgICAgICAgIHVwZGF0ZSgyICogaSwgbCwgbSwgcG9zKTsKICAgICAgICB9CiAgICAgICAgZWxzZXsKICAgICAgICAgICAgdXBkYXRlKDIgKiBpICsgMSwgbSArIDEsIHIsIHBvcyk7CiAgICAgICAgfQogICAgICAgIHNlZ1tpXSA9IHNlZ1syICogaV0gKyBzZWdbMiAqIGkgKyAxXTsKICAgIH0KfQoKaW50IGdldChpbnQgaSwgaW50IGwsIGludCByLCBpbnQgdSwgaW50IHYpewogICAgaWYodSA+IHIgfHwgdiA8IGwpIHJldHVybiAwOwogICAgaWYodSA8PSBsICYmIHIgPD0gdikgcmV0dXJuIHNlZ1tpXTsKICAgIGludCBtID0gbCArIHIgPj4gMTsKICAgIHJldHVybiBnZXQoMiAqIGksIGwsIG0sIHUsIHYpICsgZ2V0KDIgKiBpICsgMSwgbSArIDEsIHIsIHUsIHYpOwp9CgpzaWduZWQgbWFpbigpIHsKICAgIEZhc3RJTygpOwogICAgY2luID4+IG47CiAgICBmb3IoaW50IGkgPSAwOyBpIDwgbjsgaSsrKXsKICAgICAgICBjaW4gPj4gYVtpXTsKICAgIH0KICAgIGludCBjbnQgPSAwOwogICAgZm9yKGludCBpID0gMDsgaSA8IG47IGkrKyl7CiAgICAgICAgY250ICs9IGdldCgxLCAwLCBuIC0gMSwgYVtpXSArIDEsIG4gLSAxKTsKICAgICAgICB1cGRhdGUoMSwgMCwgbiAtIDEsIGFbaV0pOwogICAgfQogICAgY291dCA8PCBjbnQgPDwgZW5kbDsKICAgIGZvcihpbnQgaSA9IDA7IGkgPCBuIC0gMTsgaSsrKXsKICAgICAgICBjbnQgKz0gbiAtIDEgLSAyICogYVtpXTsKICAgICAgICBjb3V0IDw8IGNudCA8PCBlbmRsOwogICAgfQogICAgcmV0dXJuICgwIF4gMCk7Cn0=