Se te proporciona una baraja de $n$ cartas numeradas del $1$ al $n$ (no necesariamente en este orden en la baraja). Debes ordenar la baraja repitiendo la siguiente operación.
Elige $2 \le k \le n$ y divide la baraja en $k$ partes contiguas no vacías $D_1, D_2, \dots, D_k$ ($D_1$ contiene las primeras $|D_1|$ cartas de la baraja, $D_2$ contiene las siguientes $|D_2|$ cartas, y así sucesivamente). Luego, invierte el orden de las partes, transformando la baraja en $D_k, D_{k-1}, \dots, D_2, D_1$ (de modo que las primeras $|D_k|$ cartas de la nueva baraja sean $D_k$, las siguientes $|D_{k-1}|$ cartas sean $D_{k-1}$, y así sucesivamente). El orden interno de cada paquete de cartas $D_i$ no cambia con la operación.
Debes obtener una baraja ordenada (es decir, una baraja donde la primera carta sea $1$, la segunda sea $2$, y así sucesivamente) realizando como máximo $120$ operaciones. Se puede demostrar que siempre es posible ordenar la baraja realizando como máximo $120$ operaciones bajo las limitaciones de este problema.
Ejemplos de operación: los siguientes son tres ejemplos de operaciones válidas (en tres barajas con diferentes tamaños).
- Si la baraja es $[3\ 6\ 2\ 1\ 4\ 5\ 7]$ (por lo que $3$ es la primera carta y $7$ es la última), podemos aplicar la operación con $k = 4$ y $D_1 = [3\ 6]$, $D_2 = [2\ 1\ 4]$, $D_3 = [5]$, $D_4 = [7]$. Al hacerlo, la baraja se convierte en $[7\ 5\ 2\ 1\ 4\ 3\ 6]$.
- Si la baraja es $[3\ 1\ 2]$, podemos aplicar la operación con $k = 3$ y $D_1 = [3]$, $D_2 = [1]$, $D_3 = [2]$. Al hacerlo, la baraja se convierte en $[2\ 1\ 3]$.
- Si la baraja es $[5\ 1\ 2\ 4\ 3\ 6]$, podemos aplicar la operación con $k = 2$ y $D_1 = [5\ 1]$, $D_2 = [2\ 4\ 3\ 6]$. Al hacerlo, la baraja se convierte en $[2\ 4\ 3\ 6\ 5\ 1]$.
Entrada
La primera línea de la entrada contiene un entero $n$ ($1 \le n \le 20\,000$) — el número de cartas en la baraja. La segunda línea contiene $n$ enteros $c_1, c_2, \dots, c_n$ — las cartas en la baraja. La primera carta es $c_1$, la segunda es $c_2$, y así sucesivamente. Se garantiza que para todo $i \in \{1, \dots, n\}$ existe exactamente un $j \in \{1, \dots, n\}$ tal que $c_j = i$.
Salida
En la primera línea, imprime el número $q$ de operaciones que realizas (debe cumplirse que $0 \le q \le 120$). Luego, imprime $q$ líneas, cada una describiendo una operación. Para describir una operación, imprime en una sola línea el número $k$ de partes en las que vas a dividir la baraja, seguido de los tamaños de las $k$ partes: $|D_1|, |D_2|, \dots, |D_k|$. Debe cumplirse que $2 \le k \le n$, $|D_i| \ge 1$ para todo $i = 1, \dots, k$, y $|D_1| + |D_2| + \dots + |D_k| = n$. Se puede demostrar que siempre es posible ordenar la baraja realizando como máximo $120$ operaciones bajo las limitaciones de este problema. Si hay varias formas de ordenar la baraja, puedes imprimir cualquiera de ellas. Ten en cuenta que no tienes que minimizar $q$.
Ejemplos
Entrada 1
4 3 1 2 4
Salida 1
2 3 1 2 1 2 1 3
Entrada 2
6 6 5 4 3 2 1
Salida 2
1 6 1 1 1 1 1 1
Entrada 3
1 1
Salida 3
0