#include <bits/stdc++.h>
using namespace std;
#define int long long

signed main(){
	int N, i;
	scanf("%lld", &N);
	vector<int> Anum(N + 1, 0), num(N + 1, 0);
	for(i = 0; i < N; i++){
		int A;
		scanf("%lld", &A);
		Anum[A]++;
		num[Anum[A]]++;
	}
	for(i = 1; i <= N; i++){
		num[i] += num[i - 1];
	}
/*	for(i = 0; i <= N; i++){
		printf("num[%d] = %d\n", i, num[i]);
	}
*/	for(i = 1; i <= N; i++){
//		printf("i = %d\n", i);
		int l = 0, h, r = N + 1;
		while(r - l > 1){
			h = (l + r) / 2;
//			printf("h = %d\n", h);
			if(num[h] < h * i){
//				printf("test4\n");
				r = h;
			}
			else{
//				printf("test5\n");
				l = h;
			}
		}
		printf("%lld\n", l);
	}
	return 0;
}