100822: [AtCoder]ABC082 C - Good Sequence

Memory Limit:256 MB Time Limit:2 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Score : $300$ points

Problem Statement

You are given a sequence of positive integers of length $N$, $a = (a_1, a_2, ..., a_N)$. Your objective is to remove some of the elements in $a$ so that $a$ will be a good sequence.

Here, an sequence $b$ is a good sequence when the following condition holds true:

  • For each element $x$ in $b$, the value $x$ occurs exactly $x$ times in $b$.

For example, $(3, 3, 3)$, $(4, 2, 4, 1, 4, 2, 4)$ and $()$ (an empty sequence) are good sequences, while $(3, 3, 3, 3)$ and $(2, 4, 1, 4, 2)$ are not.

Find the minimum number of elements that needs to be removed so that $a$ will be a good sequence.

Constraints

  • $1 \leq N \leq 10^5$
  • $a_i$ is an integer.
  • $1 \leq a_i \leq 10^9$

Input

Input is given from Standard Input in the following format:

$N$
$a_1$ $a_2$ $...$ $a_N$

Output

Print the minimum number of elements that needs to be removed so that $a$ will be a good sequence.


Sample Input 1

4
3 3 3 3

Sample Output 1

1

We can, for example, remove one occurrence of $3$. Then, $(3, 3, 3)$ is a good sequence.


Sample Input 2

5
2 4 1 4 2

Sample Output 2

2

We can, for example, remove two occurrences of $4$. Then, $(2, 1, 2)$ is a good sequence.


Sample Input 3

6
1 2 2 3 3 3

Sample Output 3

0

Sample Input 4

1
1000000000

Sample Output 4

1

Remove one occurrence of $10^9$. Then, $()$ is a good sequence.


Sample Input 5

8
2 7 1 8 2 8 1 8

Sample Output 5

5

Input

题意翻译

现在给你的长度正整数的序列,你的目标是删除某些元素,让其是一个很好的序列。 好序列是指这个序列中每个数字的个数都为这个数字 Translated by @Chthology

加入题单

上一题 下一题 算法标签: