comun

Time limit: 1.5s Memory limit: 512MB Input: comun.in Output: comun.out

Kida și El Bandito Inofensivo au NN display-uri digitale care pot afișa litere mici din alfabetul englez. Fiecare dintre cele NN display-uri are câte MM celule. Pentru fiecare display ii, cunoaștem literele care pot fi afișate în fiecare celulă jj a sa.

Spre exemplu, dacă M=3M = 3 și un display poate afișa pe prima poziție literele {b,x}\{b, x\}, pe a doua poziție literele {y,z,c}\{y, z, c\} și pe a treia poziție literele {d,a}\{d, a\}, putem forma, de exemplu, cuvintele bydbyd, byabya, bzabza, etc.

El Bandito Inofensivo consideră că un cuvânt de lungime MM este comun dacă acesta se poate forma pe cel puțin KK dintre cele NN display-uri. Auzind asta, Kida vă roagă să o ajutați să calculeze numărul de cuvinte comune distincte.

Cerință

Ajutați-o pe Kida să calculeze numărul de cuvinte comune distincte. De vreme ce acest număr poate să fie foarte mare, se cere restul său la împărțirea prin 109+910^9 + 9.

Date de intrare

Pe prima linie din fișierul de intrare se află trei numere: NN, MM și KK, cu semnificația din enunț. Pe următoarele NN linii se află câte MM șiruri de caractere, formate din litere mici distincte ale alfabetului englez, separate prin câte un spațiu. Al jj-lea șir de caractere de pe linia i+1i + 1 din fișierul de intrare reprezintă caracterele pe care le poate afișa al ii-lea display pe poziția jj.

Date de ieșire

Fișierul de ieșire va conține restul la împărțirea cu 109+910^9 + 9 al numărului de cuvinte comune distincte.

Restricții și precizări

  • 1KN221 \leq K \leq N \leq 22
  • 1M221 \leq M \leq 22
  • Cele NN display-uri pot afișa doar litere mici ale aflabetului englez.
# Punctaj Restricții
1 11 K=NK = N
2 13 1N,M151 \leq N, M \leq 15 și toate cele NN display-uri pot afișa doar caractere din mulțimea {a,b}\{a, b\}
3 14 1M41 \leq M \leq 4
4 25 1N101 \leq N \leq 10
5 22 1M101 \leq M \leq 10, 1N201 \leq N \leq 20
6 15 fără restricții suplimentare

Exemplu

comun.in

4 3 2
ab bc ad
ba bc dz
bx yzc da
ax cd zwyhd

comun.out

7

Sunt 4 display-uri care pot afișa cuvinte de lungime 33. Cuvintele care pot fi afișate pe cel puțin două display-uri sunt: bcabca, abdabd, bbdbbd, acdacd, bcdbcd, xcdxcd și aczacz.

Log in or sign up to be able to send submissions!