QOJ.ac

QOJ

Límite de tiempo: 3.0 s Límite de memoria: 256 MB Puntuación total: 100

#17674. NM Caracteres

Estadísticas

¡Busy Beaver está creando un nuevo lenguaje para su clase de lingüística! Ya ha decidido que su lenguaje tendrá un alfabeto cuyas letras son los enteros $1, \dots, NM$ en ese orden; ahora quiere crear algunas palabras para el lenguaje.

Debido a que Busy Beaver está interesado en la estadística, quiere controlar las frecuencias de las letras que aparecen en las palabras, por lo que ha elegido un multiconjunto $a$ de tamaño $NM$ de letras de su alfabeto. Ahora formará $N$ palabras, cada una con $M$ letras, de tal manera que cada letra de $a$ se utilice exactamente una vez (es decir, si una letra dada $x$ aparece exactamente $k$ veces en $a$, entonces se utiliza exactamente $k$ veces en todas las $N$ palabras).

Después de formar las palabras, Busy Beaver planea organizarlas en un diccionario, por lo que ordenará lexicográficamente sus $N$ palabras para producir la secuencia de palabras $s_1, \dots, s_N$. A Busy Beaver le gusta que las cadenas sean lexicográficamente pequeñas, por lo que para cada $k$ desde $1$ hasta $N$ quiere conocer el valor mínimo posible lexicográficamente de $s_k$ sobre todas las elecciones de palabras.

Nota: la respuesta para cada $s_k$ es independiente; por ejemplo, la elección de palabras para que $s_1$ sea minimizada puede ser diferente de la elección de palabras para que $s_2$ sea minimizada.

Entrada

La primera línea contiene dos enteros positivos $N, M$ ($1 \le NM \le 10^6$).

La segunda línea contiene $NM$ enteros $a_1, \dots, a_{NM}$ que componen el multiconjunto $a$ ($1 \le a_j \le NM$).

Salida

Para cada $k$ desde $1$ hasta $N$, imprima el valor mínimo posible de $s_k$ en su propia línea como una secuencia de enteros separados por espacios.

Ejemplos

Entrada 1

4 3
1 1 2 2 3 3 4 4 5 5 6 6

Salida 1

1 1 2
1 2 3
2 2 3
2 3 4

Entrada 2

3 4
12 4 4 4 1 1 4 4 6 4 1 4

Salida 2

1 1 1 4
1 4 4 4
1 4 4 12

Entrada 3

4 5
12 7 17 3 6 11 9 2 17 7 1 6 9 12 6 3 9 12 2 15

Salida 3

1 2 2 3 3
2 2 3 3 6
2 3 6 7 7
3 3 6 6 6

Entrada 4

1 1
1

Salida 4

1

Nota

En el primer ejemplo, las siguientes elecciones de palabras minimizan cada $s_k$:

Al elegir las palabras 112, 233, 445, 566, obtenemos que $s = 112, 233, 445, 566$, por lo que $s_1 = 112$ como se desea.

Al elegir las palabras 123, 456, 123, 456, obtenemos que $s = 123, 123, 456, 456$, por lo que $s_2 = 123$ como se desea.

Al elegir las palabras 166, 155, 344, 223, obtenemos que $s = 155, 166, 223, 344$, por lo que $s_3 = 223$ como se desea.

Al elegir las palabras 234, 234, 156, 156, obtenemos que $s = 156, 156, 234, 234$, por lo que $s_4 = 234$ como se desea.

Se puede demostrar que en todos estos casos no hay forma de elegir las palabras de manera que el respectivo $s_k$ sea aún menor lexicográficamente.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.