悔改

题目描述

Daniel13265 有一些同样长的小木棍,他把这些木棍随意砍成两段,使得每段的长都不超过 $m$。 现在他想把小木棍拼接成原来的样子,但是却遗失了部分小木棍,而且忘记了自己开始时有多少根木棍和它们的长度。所以他打算把剩下的小木棍拼接出尽可能多的相同长度的木棍。 给出每段小木棍的长度,求出从剩下的木棍中最多能够拼接出的相同长度的木棍的个数与能拼接出来相同长度的木棍个数最多时木棍的最小可能长度。

输入输出格式

输入格式


输入共 $2$ 行。 第一行包含两个正整数 $n,m$,分别表示剩余木棍个数与剩余木棍的最大可能长度。 第二行共 $n$ 个用单个空格隔开的正整数,第 $i$ 个数 $a_i$ 表示第 $i$ 个木棍的长度。

输出格式


输出一行两个整数,分别表示从剩下的木棍中最多能够拼接出的相同长度的木棍的个数与能拼接出来相同长度的木棍个数最多时木棍的最小可能长度。

输入输出样例

输入样例 #1

7 10
1 1 2 4 7 8 9

输出样例 #1

2 9

说明

### 样例解释 如果要拼接出尽量多的长度为 $11$ 的木棍,可以将长度为 $2$ 和 $9$ 的木棍拼接在一起,将长度为 $4$ 和 $7$ 的木棍拼接在一起。然而如果将长度为 $1$ 和 $8$ 的木棍拼接在一起,将长度为 $2$ 和 $7$ 的木棍拼接在一起,可以拼接出 $2$ 根长度为 $9$ 的木棍。 可以发现能拼接出来相同长度的木棍个数的最大值就是 $2$,此时木棍的长度可能为 $9,10$ 或 $11$,其中最小的为 $9$。 ### 数据范围 **本题采用捆绑测试。你每通过一个子任务的所有数据点,就能得到该子任务的全部分数。** | 子任务编号 | $n\le$ | $m\le$ | 分值 | |:-:|:-:|:-:|:-:| | $1$ | $10$ | $10^5$ | $5$ | | $2$ | $10^3$ | $10^3$ | $10$ | | $3$ | $10^3$ | $10^5$ | $10$ | | $4$ | $10^5$ | $10$ | $5$ | | $5$ | $10^5$ | $10^3$ | $10$ | | $6$ | $10^5$ | $10^5$ | $60$ | 对于 $100\%$ 的数据,满足 $2\le n,m\le10^5,1\le a_i\le m$。