힙들의 힙

k를 1부터 n-1까지 각각에 대해 배열을 k진 힙으로 보고 부모보다 작은 값을 가진 노드의 수를 센다.

보통7수학완전 탐색구현아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

n개의 정수로 이루어진 수열 a1,a2,,ana_1, a_2, \dots, a_n이 주어진다. 이 수열을 그대로 k진 힙의 노드 값으로 놓고, 최소 힙 성질을 깨뜨리는 노드가 몇 개인지 센다.

k진 힙은 내부 노드가 자식을 최대 k개까지 가지는 루트 있는 트리다. 노드 번호는 1번부터 n번까지이고 1번이 루트다. v번 노드는 k(v1)+2k(v-1)+2번, k(v1)+3k(v-1)+3번, \dots, kv+1kv+1번 노드를 자식으로 가진다. 번호가 n보다 큰 자식은 없는 것으로 본다. 그래서 마지막 내부 노드만 자식을 k개보다 적게 가질 수 있다.

루트가 아닌 노드 v의 부모를 p(v)p(v)라 하자. av<ap(v)a_v < a_{p(v)}이면 v는 최소 힙 성질을 깨뜨리는 노드다. k=1,2,,n1k = 1, 2, \dots, n-1 각각에 대해 이런 노드가 몇 개인지 구하시오.

입력

첫째 줄에 정수 n이 주어진다. (1n2000001 \le n \le 200000)

둘째 줄에 수열을 이루는 n개의 정수 a1,a2,,ana_1, a_2, \dots, a_n이 공백으로 구분되어 주어진다. (109ai109-10^9 \le a_i \le 10^9)

출력

n1n-1개의 정수를 한 줄에 공백 하나로 구분해 출력한다. ii번째 수는 ii진 힙에서 최소 힙 성질을 깨뜨리는 노드의 개수다. n=1n = 1이면 해당하는 k가 없으므로 아무것도 출력하지 않는다.

힌트

아래 그림은 n=5n = 5이고 수열이 1 5 4 3 21\ 5\ 4\ 3\ 2일 때 k=1,2,3,4k = 1, 2, 3, 4인 힙이다. 빨간 노드가 최소 힙 성질을 깨뜨린다.