CF231C To Add or Not to Add

题目描述

有一张纸上写着一个包含 $n$ 个整数 $a_{1}, a_{2}, \ldots, a_{n}$ 的数组。你的任务是找出一个在这个数组中出现次数最多的数字。 然而,在查找这样一个数字之前,你最多可以进行 $k$ 次如下操作——任选数组中的一个元素,并将其加 $1$。换句话说,你至多可以对同一个数组元素进行多次加 $1$ 操作,总操作次数不超过 $k$。 你的任务是在最多进行 $k$ 次允许的操作后,找出某个数字在数组中的最大出现次数。如果有多个数字能达到相同的最大出现次数,请输出最小的那个数字。

输入格式

第一行包含两个整数 $n$ 和 $k$($1 \leq n \leq 10^{5}$,$0 \leq k \leq 10^{9}$),分别表示数组元素的个数和你可以进行的操作次数。 第二行包含 $n$ 个整数 $a_{1}, a_{2}, \ldots, a_{n}$($|a_{i}| \leq 10^{9}$),表示初始数组。数之间用单个空格分隔。

输出格式

输出一行,包含两个数:在最多进行 $k$ 次操作后,某个数在数组中出现的最大次数,以及能够达到该最大次数的最小的数。用空格分隔输出。

说明/提示

在第一个样例中,你应该把数组的第二个元素加一,把第五个元素加二。得到的新序列为 $6,4,4,0,4$,其中数字 $4$ 出现了 $3$ 次。 在第二个样例中,你可以选择不进行任何操作,也可以把每个元素都加一。如果不操作,得到的数组为 $5,5,5$;如果都加一,得到 $6,6,6$。两种情况下最大出现次数都是 $3$,因为 $5