Operaciones a la Secuencia.


Submit solution

Points: 100 (partial)
Time limit: 1.0s
Memory limit: 256M

Author:
Problem type
Allowed languages
C, C++, Java, Pascal, Python, VB

Los azucareros del centro tienen una secuencia, de enteros, a (a_1, a_2,..., a_n) de tamaño n. Ellos tienen a lo sumo k operaciones por hacer. En cada operación él puede escoger un elemento a_i de la secuencia y aumentarlo en 1 (Ellos pueden escoger el mismo elemento varias veces). Es decir, en cada operación ellos pueden hacer a_i = a_i + 1.

Escriba el programa que le permita saber el máximo número de ocurrencias de algún número en la secuencia después de realizar no más de k operaciones. Si hay varios de estos números, entonces ellos prefieren el menor de todos.

Entrada

La primera línea contiene dos enteros n y k (1 \leq n \leq 10^5, 1 \leq k \leq 10^9) los cuales representan el tamaño de la secuencia y la cantidad de operaciones respectivamente. La segunda línea contiene la secuencia a (-10^9 \leq a_i \leq 10^9), los números en esta línea están separados por espacios.

Salida

En una única línea imprima dos enteros separados por un espacio: el máximo número de ocurrencias de algún elemento y el propio elemento (de haber varios imprima el menor).

Ejemplo #1 de Entrada

5 3 
6 3 4 0 2

Ejemplo #1 de Salida

3 4

Ejemplo #2 de Entrada

3 4 
5 5 5

Ejemplo #2 de Salida

3 5

Ejemplo #3 de Entrada

5 3 
3 1 2 2 1

Ejemplo #3 de Salida

4 2

Explicación: En el primer ejemplo puedes aumentar el segundo elemento una vez e incrementar el quinto elemento dos veces. Luego de esto obtenemos la secuencia 6, 4, 4, 0, 4 ; donde el 4 se repite 3 veces. En el segundo ejemplo no necesitas hacer nada. Nota que podrías haber aumentado cada elemento en uno pero en ese caso se repetiría el 6 tres veces, el cual no es menor que 5 (que también se repite tres veces).


Comments

There are no comments at the moment.