Podział na podciągi

Podziel dany różnowartościowy ciąg na zadaną liczbę podciągów rosnących (każdy element ciągu musi należeć do dokładnie jednego podciągu).

Wejście

W pierwszym wierszu wejścia znajdują się liczby całkowite n i k (1 <= n , k <= 100.000), oddzielone pojedynczym odstępem - liczba wyrazów ciągu oraz liczba podciągów do osiągnięcia. W drugim wierszu znajdują się kolejne wyrazy ciągu, które są dodatnimi liczbami całkowitymi nie większymi niż 230.

Wyjście

Jeśli nie da się podzielić ciągu na k podciągów rosnących, na wyjście wypisz jedno słowo w pierwszej linii, "NIE". W przeciwnym wypadku program powinien wypisać w pierszej linii słowo "TAK", a w kolejnych k liniach k ciągów, jeden w każdej linii. Opis ciągu to jego długość, a następnie jego wszystkie wyrazy. Jeżeli istnieje więcej niż jedna odpowiedź, Twój program może wypisać jakąkolwiek z nich.

Przykład

Dla danych wejściowych:

5 3
3 2 1 4 5

poprawnym wynikiem jest:

TAK
2 3 4
1 2
2 1 5