Otrzymujesz talię $n$ kart ponumerowanych od $1$ do $n$ (niekoniecznie w tej kolejności). Musisz posortować talię, powtarzając następującą operację.
Wybierz $2 \le k \le n$ i podziel talię na $k$ niepustych, spójnych części $D_1, D_2, \dots, D_k$ ($D_1$ zawiera pierwsze $|D_1|$ kart talii, $D_2$ zawiera kolejne $|D_2|$ kart i tak dalej). Następnie odwróć kolejność części, przekształcając talię w $D_k, D_{k-1}, \dots, D_2, D_1$ (tak, że pierwsze $|D_k|$ kart nowej talii to $D_k$, kolejne $|D_{k-1}|$ kart to $D_{k-1}$ i tak dalej). Wewnętrzna kolejność kart w każdej paczce $D_i$ pozostaje niezmieniona przez operację.
Musisz uzyskać posortowaną talię (czyli taką, w której pierwsza karta to $1$, druga to $2$ itd.), wykonując co najwyżej $120$ operacji. Można udowodnić, że zawsze możliwe jest posortowanie talii w co najwyżej $120$ operacjach przy podanych ograniczeniach.
Przykłady operacji: poniżej znajdują się trzy przykłady poprawnych operacji (na trzech taliach o różnych rozmiarach).
- Jeśli talia to $[3\ 6\ 2\ 1\ 4\ 5\ 7]$ (gdzie $3$ jest pierwszą kartą, a $7$ ostatnią), możemy wykonać operację dla $k = 4$ oraz $D_1 = [3\ 6]$, $D_2 = [2\ 1\ 4]$, $D_3 = [5]$, $D_4 = [7]$. W rezultacie talia staje się $[7\ 5\ 2\ 1\ 4\ 3\ 6]$.
- Jeśli talia to $[3\ 1\ 2]$, możemy wykonać operację dla $k = 3$ oraz $D_1 = [3]$, $D_2 = [1]$, $D_3 = [2]$. W rezultacie talia staje się $[2\ 1\ 3]$.
- Jeśli talia to $[5\ 1\ 2\ 4\ 3\ 6]$, możemy wykonać operację dla $k = 2$ oraz $D_1 = [5\ 1]$, $D_2 = [2\ 4\ 3\ 6]$. W rezultacie talia staje się $[2\ 4\ 3\ 6\ 5\ 1]$.
Wejście
Pierwsza linia wejścia zawiera jedną liczbę całkowitą $n$ ($1 \le n \le 20\,000$) — liczbę kart w talii. Druga linia zawiera $n$ liczb całkowitych $c_1, c_2, \dots, c_n$ — karty w talii. Pierwsza karta to $c_1$, druga to $c_2$ i tak dalej. Gwarantuje się, że dla każdego $i = 1, \dots, n$ istnieje dokładnie jedno $j \in \{1, \dots, n\}$ takie, że $c_j = i$.
Wyjście
W pierwszej linii wypisz liczbę $q$ wykonanych operacji (musi zachodzić $0 \le q \le 120$). Następnie wypisz $q$ linii, z których każda opisuje jedną operację. Aby opisać operację, wypisz w pojedynczej linii liczbę $k$ części, na które dzielisz talię, a następnie rozmiary tych $k$ części: $|D_1|, |D_2|, \dots, |D_k|$. Musi zachodzić $2 \le k \le n$, $|D_i| \ge 1$ dla wszystkich $i = 1, \dots, k$ oraz $|D_1| + |D_2| + \dots + |D_k| = n$.
Można udowodnić, że zawsze możliwe jest posortowanie talii w co najwyżej $120$ operacjach przy podanych ograniczeniach. Jeśli istnieje kilka sposobów na posortowanie talii, możesz wypisać dowolny z nich. Zauważ, że nie musisz minimalizować $q$.
Przykład
Przykład 1
4 3 1 2 4
2 3 1 2 1 2 1 3
Przykład 2
6 6 5 4 3 2 1
1 6 1 1 1 1 1 1
Przykład 3
1 1
0