题目描述
長さ N の数列 A = (A1, A2, …, AN) が与えられます。 K = 0, 1, 2, …, N−1 のそれぞれについて、下記の問題を解いてください。
1 以上 N 以下の整数 i であって、次の条件を満たすものの個数を求めよ。
- A に含まれる整数のうち Ai より大きいものはちょうど K 種類である。
输入格式
入力は以下の形式で標準入力から与えられる。
N A1 A2 … AN
输出格式
N 行出力せよ。 i = 1, 2, …, N について、i 行目には K = i−1 の場合の問題の答えを出力せよ。
题目大意
你有一个序列 A=(A1,A2, ...,An)
你需要求有多少个数满足 A 中有 k 个不同的数 ≥ ai (i∈[1,n])
6
2 7 1 8 2 8
2
1
2
1
0
0
1
1
1
10
979861204 57882493 979861204 447672230 644706927 710511029 763027379 710511029 447672230 136397527
2
1
2
1
2
1
1
0
0
0
提示
制約
- 1 ≤ N ≤ 2 × 105
- 1 ≤ Ai ≤ 109
- 入力はすべて整数
Sample Explanation 1
例として、K = 2 の場合の問題の答えを以下で求めます。 - A1 = 2 に関して、A に含まれる整数のうち A1 より大きいものは、7, 8 の 2 種類です。 - A2 = 7 に関して、A に含まれる整数のうち A2 より大きいものは、8 の 1 種類です。 - A3 = 1 に関して、A に含まれる整数のうち A3 より大きいものは、2, 7, 8 の 3 種類です。 - A4 = 8 に関して、A に含まれる整数のうち A4 より大きいものは、0 種類です(存在しません)。 - A5 = 2 に関して、A に含まれる整数のうち A5 より大きいものは、7, 8 の 2 種類です。 - A6 = 8 に関して、A に含まれる整数のうち A6 より大きいものは、0 種類です(存在しません)。 よって、A に含まれる整数のうちAi より大きいものがちょうど K = 2 種類であるような i は、i = 1 と i = 5 の 2 つです。よって、K = 2 の場合の答えは 2 です。