cifru

Time limit: 0.02s Memory limit: 16MB Input: cifru.in Output: cifru.out

Alibaba trebuie să descopere cifrul care deschide cufărul cu comoara cea mare. Cifrul este foarte greu de găsit. El a descoperit mai multe pietre, fiecare piatră având o altă culoare, pe fiecare piatră fiind scris un număr natural cu cel mult 44 cifre. Alibaba observă că numerele de pe fiecare piatră sunt distincte două câte două. Regula după care se formează cifrul este una foarte simplă, şi Alibaba a reuşit să o obţină destul de uşor: cifrul este format din alăturarea într-o anumită ordine a tuturor pietrelor. Ceea ce Alibaba mai ştie este că pe poziţia pp din cifru se găseşte cu siguranţă cifra kk.

Cerinţă

Scrieţi un program care determină numărul de variante de cifruri pe care va trebui să le încerce Alibaba. Numărul fiind foarte mare se va calcula modulo 46 33746 \ 337.

Date de intrare

Fişierul de intrare cifru.in conţine pe prima linie trei numere naturale nn, pp şi kk separate printr-un spaţiu, reprezentând numărul total de numere de pe pergament, poziţia pp şi respectiv cifra kk care se găseşte pe poziţia pp în cifru. Pe următoarele nn linii se găseşte câte unul din cele nn numere de pe pergament.

Date de ieşire

Pe prima linie a fişierului de ieşire cifru.out se vor scrie un număr natural reprezentând numărul de variante modulo 46 33746 \ 337 de cifruri pe care va trebui să le încerce Alibaba.

Restricții si precizări:

  • 0<n<250 \lt n \lt 25
  • Numerele de pe fiecare piatră sunt strict pozitive mai mici decât 10 00010 \ 000 şi sunt distincte două câte două.
  • 0k90 \leq k \leq 9
  • Două cifruri diferă între ele prin ordinea de aşezare a pietrelor, chiar dacă numărul obţinut prin citirea numerelor de pe pietre este aceeaşi. De exemplu dacă există trei pietre având inscripţionate numerele 1212, 33 şi respectiv 123123, ele se pot lipi astfel: 123123,12312312 - 3 - 123, 123 - 12 - 3, cele două cifruri considerându-se diferite, cifrele având culori diferite.

Exemplu

cifru.in

7 6 2
12
56
3
214
523
6
2

cifru.out

1548

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