% Idee: Ahto Truu
% Tekst: Ahto Truu

\documentclass[a4paper,11pt]{article}
\usepackage[et]{../../eio}

\begin{document}
\begin{ol}{\eio}{\fv 7.02.2026}{\yle}{}
\begin{yl}{2}{Anagrammid}{ana}{1 sek / 3 sek}{30 punkti}

Kaht sõna nimetatakse üksteise anagrammideks, kui üks on teisest saadav ainult tähtede ümber\-järjestamisega, ilma tähti asendamata, lisamata või kustutamata. Näiteks ``kama'' ja ``maak'' on anagrammid, aga ``saal'' ja ``saak'' ei ole anagrammid ning ``saa'' ja ``saak'' ka ei ole anagrammid. Iga sõna on ka iseenda anagramm.

Kirjutada programm, mis saab hulga sõnu ja jagab need gruppideks nii, et ühes grupis olevad sõnad on üksteise anagrammid, aga erinevates gruppides olevad sõnad ei ole.

\sis Esimesel real on sõnade arv $N$ ($1 \le N \le 100\,000$). Järgmisel $N$ real on igaühel üks sõna. Iga sõna koosneb 1 kuni 20 väikesest ladina tähest.

\val Esimesele reale väljastada gruppide arv $K$. Järgmisele $K+N$ reale väljastada gruppide kirjeldused. Grupi $i$ kirjelduse esimesele reale väljastada gruppi kuuluvate sõnade arv $M_i$ ja selle järele $M_i$ reale gruppi kuuluvad sõnad. Gruppide järjekord väljundis ja samasse gruppi kuuluvate sõnade omavaheline järjekord ei ole oluline.

\nde[0]{3cm}{3cm}

Sisendis antud 5 sõna moodustavad 4 gruppi. Esimeses grupis on 2 sõna (``kama'' ja ``maak''). Ülejääänud kolmes grupis on igaühes 1 sõna (``saal'', ``saak'' ja ``saa'' on igaüks eraldi grupp).

\nde[1]{3cm}{3cm}

\hnd \testideraldi
\begin{xenum0}
  \item (0 punkti) \naitedlyhem
  \item (2 punkti) $N \le 100$ ja kõik sõnad on täpselt 1-tähelised.
  \item (3 punkti) $N \le 100$ ja kõik sõnad on täpselt 2-tähelised.
  \item (4 punkti) $N \le 100$ ja kõik sõnad on kuni 3-tähelised.
  \item (7 punkti) $N \le 100$ ja kõik sõnad on kuni 8-tähelised.
  \item (7 punkti) $N \le 100$.
  \item (7 punkti) \piiranguteta
\end{xenum0}

\end{yl}
\end{ol}
\end{document}
