编程题
### 问题描述
大衣有 $M$ 种的颜色球和 $N$ 个盒子,给你一个长度为 $M$ 的数组 $A$,每种颜色的球有 $A_i$ 个,大衣想要用盒子把球全部装下,需要满足以下要求:
- 每个盒子不能有同种颜色的球。
- 每个球都要放进一个盒子。
已知一定有解,大衣想知道有 $M$ 种颜色球的盒子最少有多少个。
### 输入格式
第一行输入两个正整数 $N,M$ 分别表示盒子的数量和球的颜色的数量。
第二行输入 $N$ 个整数 $A_1,A_2,\cdots,A_N$ 表示每种颜色球的数量。
### 输出格式
输出一个整数表示在满足要求的情况下,有 $M$ 种颜色球的盒子最少的个数。
### 样例输入1
```text
5 3
5 4 4
```
### 样例输出1
```text
3
```
### 样例输入2
```text
2 2
1 1
```
### 样例输出2
```text
0
```
### 说明
样例 $1$:有 $5$ 个盒子和 $3$ 种不同的颜色球,一种合理且结果最小的放置方法是:
- 盒子 $1$ 装颜色球 $1,2,3$。
- 盒子 $2$ 装颜色球 $1,2,3$。
- 盒子 $3$ 装颜色球 $1,2,3$。
- 盒子 $4$ 装颜色球 $1,3$。
- 盒子 $5$ 装颜色球 $1,2$。
盒子 $1,2,3$ 都包含 $M$ 种颜色球,答案是 $3$。
样例 $2$:有 $2$ 个盒子和 $2$ 种不同的颜色球,一种合理且结果最小的放置方法是:
- 盒子 $1$ 装颜色球 $1$。
- 盒子 $2$ 装颜色球 $2$。
没有盒子包含 $M$ 种颜色球,答案是 $0$。
### 评测数据规模
对于所有的评测数据,$1\le N,M\le 2\times10^5$,$1\le A_i\le N$。