E - Regalos

Languages: C, C++, Java, Haskell, Pascal, Python, JavaScript, Tiger, C#
Time & Memory limits: (details)

Fito fue con sus primos a comprar un regalo a su abuela por el día de las madres. Cuando llegaron a la tienda notaron que habían $N$ tipos de obsequios diferentes. Fito y sus primos desean hacer una sola compra entre todos, donde cada uno aporte la misma cantidad de dinero. Adicionalmente quieren comprar a lo sumo un regalo de cada tipo. Por esto, te han pedido que hagas un programa que dado los precios de los $N$ regalos, determine cuáles comprar o que informe que dicha compra es imposible. El monto total de la compra no importa que tan elevado sea.

Input

Línea 1 : Dos enteros $N$ y $C$ $(1 \le N \le 100000, 0 \le C \lt N)$, la cantidad de regalos y la cantidad de primos que Fito tiene.
Línea 2 : $N$ enteros separados por espacio $p_1, p_2, …, p_n$ $(1 \le p_i \le 10^9)$, los precios de los regalos.


Output

Línea 1 : Si no existe solución, imprima una línea con la palabra “NO” sin comillas. En otro caso, imprima la cantidad $G$ de regalos en la compra.
Línea 2 : Si existe solución, imprima en la segunda línea $G$ enteros separados por espacio representando los índices de los regalos. No pueden haber índices repetidos.

Sample test(s)

Input
10 5 4 3 1 7 5 1 2 9 1 2
Output
3 1 4 6

Hints

Si Fito y sus primos compran los regalos $1$, $4$ y $6$, deberán pagar un total de $\$4 + \$7 + \$1 = \$12$. De esta forma cada uno deberá aportar exactamente $\$2$.