teams

Time limit: 0.5s Memory limit: 512MB Input: teams.in Output: teams.out

Cerință

Liceul de Cultură Generală nr. 22 din Dorohoi organizează un concurs pe echipe. Fiecare echipă trebuie să fie formată din KK, 3K43 \leq K \leq 4 elevi din generaţii consecutive: un elev de clasa a IX-a (generaţia 00), unul de clasa a X-a (generaţia 11), unul de clasa a XI-a (generaţia 22) si opțional un elev de clasa a XII-a (generaţia 33), daca cel din urmă nu este ocupat cu bacaleaureatul. In mod curios, toate clasele liceului sunt formate din NN elevi fiecare, 1N2 0001 \leq N \leq 2 \ 000.

Organizatorii concursului au măsurat cu exactitate inteligenţa fiecărui elev şi au observat că nu există 22 elevi cu același nivel de inteligenţă în întreaga şcoală. Fiecare elev a primit un ID cuprins între 11 și NkN \cdot k. Astfel, dacă un copil aa este mai inteligent decât un copil bb, atunci ID(a)>ID(b)ID(a) > ID(b). Ei au mai observat că niciun elev nu va vrea să fie in aceeași echipă cu un elev mai inteligent dintr-o generatie mai tânără, deoarece se va simţi prost(la figurat). Organizatorii se întreabă în câte moduri se pot alege TT echipe de KK elevi, astfel încât fiecare elev al liceului să facă parte din maxim o echipă.

Formal, fie KK şiruri de NN elemente ID0,ID1,,IDk1ID_0, ID_1, \dots, ID_{k-1} , reprezentând Id-urile elevilor din cele KK generații, respectiv. Se cere să se numere în câte moduri se pot alege TT echipe de forma (ei,0,ei,1,,ei,K1)(e_{i,0}, e_{i,1}, \dots, e_{i,K-1}), 0ei,jN10 \leq e_{i,j} \leq N-1 pentru orice 0iT10 \leq i \leq T-1, 0jK10 \leq j \leq K-1. Toate echipele trebuie să respecte proprietatea IDj,ei,j<IDj+1,ei,j+1ID_{j, e_{i,j}} < ID_{j+1, e_{i,j+1}}, pentru orice 0iT10 \leq i \leq T-1, 0jK20 \leq j \leq K-2. În plus, niciun elev nu poate să apară in mai mult de o echipă. Două modalitati de a alege echipele se consideră distincte daca există cel puţin o echipă care apare într-o modalitate și nu apare în cealaltă.

Date de intrare

Fișierul de intrare teams.in are urmatoarea structură:

  • linia 11: K N TK \ N \ T, reprezentând numărul de generaţii, numărul de elevi din fiecare generaţie, respectiv numărul de echipe care trebuie formate.
  • linia 2+i2 + i: IDi,0 IDi,1IDi,N1ID_{i,0} \ ID_{i, 1} \dots ID_{i,N-1}, (0iK1)(0 \leq i \leq K-1)

Date de ieșire

Pe prima linie a fișierului de ieșire teams.out se va găsi un singur număr întreg, numărul de echipe ce se pot forma modulo 6 700 4176 \ 700 \ 417

Restricții și precizări

  • 3K43 \leq K \leq 4;
  • 1T,N2 0001 \leq T, N \leq 2 \ 000;
# Punctaj Restricții
1 6 1TN51 \leq T \leq N \leq 5, K=3K = 3
2 6 1TN201 \leq T \leq N \leq 20, K=3K = 3
3 31 1TN401 \leq T \leq N \leq 40, K=3K = 3
4 16 1TN3001 \leq T \leq N \leq 300, K=3K = 3
5 16 1TN20001 \leq T \leq N \leq 2000, K=3K = 3
6 16 1TN251 \leq T \leq N \leq 25, K=4K = 4
7 9 1TN3001 \leq T \leq N \leq 300, K=4K = 4

Exemplul 1

teams.in

3 3 2
5 4 2
7 1 3
6 8 9

teams.out

8

Explicație

ID-urile elevilor din cele 88 soluții din primul exemplu sunt:

(5,7,8)(5, 7, 8) si (2,3,6)(2, 3, 6)
(5,7,8)(5, 7, 8) si (2,3,9)(2, 3, 9)
(5,7,9)(5, 7, 9) si (2,3,6)(2, 3, 6)
(5,7,9)(5, 7, 9) si (2,3,8)(2, 3, 8)
(4,7,8)(4, 7, 8) si (2,3,6)(2, 3, 6)
(4,7,8)(4, 7, 8) si (2,3,9)(2, 3, 9)
(4,7,9)(4, 7, 9) si (2,3,6)(2, 3, 6)
(4,7,9)(4, 7, 9) si (2,3,8)(2, 3, 8)

Exemplul 2

teams.in

4 3 1
2 1 4
3 7 5
11 6 10
9 8 12

teams.out

31

Exemplul 3

teams.in

3 8 8
1 2 3 4 5 6 7 8
9 10 11 12 13 14 15 16
17 18 19 20 21 22 23 24

teams.out

4201486

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