#include <bits/stdc++.h>
using namespace std;
const int inf = 1e9;
const int MOD = 1e9 + 7;
const int N = 2e5 + 10;
int b[N], n, a[N], p[N], ans[N];
bool comp(int x, int y) { return a[x] < a[y]; }
void add(int x, int v) {
  while (x <= n) {
    b[x] += v;
    x += x & -x;
  }
}
int get(int x) {
  int tmp = 0;
  while (x) {
    tmp += b[x];
    x -= x & -x;
  }
  return tmp;
}
int main() {
  scanf("%d", &n);
  for (auto i = 1; i <= n; i++) scanf("%d", a + i);
  for (auto i = 1; i <= n; i++) p[i] = i;
  sort(p + 1, p + n + 1, comp);
  for (auto i = 1; i <= n; i++) {
    int next = i;
    while (next < n && a[p[next + 1]] == a[p[i]]) next++;
    for (auto j = i; j <= next; j++) {
      int x = p[j];
      for (int k = 1; k < n && 1LL * k * (x - 1) + 2 <= n; k++) {
        int L = k * (x - 1) + 2, R = min(n, k * x + 1);
        ans[k] += get(R) - get(L - 1);
      }
    }
    for (auto j = i; j <= next; j++) add(p[j], 1);
    i = next;
  }
  for (auto i = 1; i < n; i++) printf("%d ", ans[i]);
}
