Anul acesta se organizează prima ediție a Olimpiadei Pluridisciplinare pentru Centrele de Excelență, PluriCEX. Fiecare Centru de Excelență din țară va trimite la concurs o echipă formată din k
membri (toți participanți la Centrul de Excelență). Echipa va trebui să rezolve probleme interdisciplinare, disciplinele vizate fiind cele de la Centrul de Excelenţă (D
discipline, pe care le vom considera numerotate de la 1
la D
).
Directorul CEX Iași a făcut o listă cu primii n
cei mai buni elevi de la CEX, apoi a numerotat elevii de la 1
la n
, în ordinea apariției lor în listă. Pentru fiecare elev, directorul a notat disciplinele la care el participă la CEX.
Cerința
Scrieți un program care să determine toate echipele ce pot fi formate din k
dintre cei n
elevi de pe lista directorului, cu condiția ca pentru fiecare disciplină să existe în echipă cel puțin un membru care să studieze la CEX disciplina respectivă.
Date de intrare
Fișierul de intrare pluricex1.in
conţine pe prima linie trei numere naturale n k D
(cu semnificația din enunț). Urmează n
linii care descriu participările la CEX ale celor n
elevi de pe lista directorului. Mai exact, pe linia i+1
este descrisă participarea elevului i
astfel: nr d1 d2 ... dnr
. Primul număr de pe linie (nr
) indică numărul de discipline la care participă elevul i
. Următoarele nr
numere reprezintă disciplinele la care participă elevul i
. Numerele scrise pe aceeași linie sunt separate prin spațiu.
Date de ieșire
Fișierul de ieșire pluricex1.out
va conţine toate echipele ce se pot forma respectând condiţiile din enunţ, câte o echipă pe o linie. Membrii unei echipe vor fi scrişi în ordine crescătoare, separaţi prin câte un spaţiu. Echipele vor fi scrise în ordine lexicografică.
Restricții și precizări
0 < n ≤ 22
0 < k ≤ 8
0 < D ≤ 10
- Pentru datele de test problema admite întotdeauna soluţie, numărul de soluţii fiind mai mic de
20000
. - Spunem că vectorul
(x1, x2, ..., xn)
precedă lexicografic vectorul(y1, y2, ..., yn)
dacă există un indicei
astfel încâtxj=yj
, pentru orice1 ≤ j < i
, iarxi < yi
.
Exemplu:
pluricex1.in
6 3 5 1 2 2 1 4 3 2 4 3 1 5 2 3 1 1 3
pluricex1.out
2 3 4 3 4 5