Responsive image
Meniu
Toate soluțiile
Soluţii trimise de tine
Compilator online
Ajutor

Cifru

Adăugată de :
sorynsoo
Sursă :
OJI2006
Autor :
Stelian Ciurea
Grupă :
Mare
Punctaj :
0 pc

Restricţii

Citire / Scriere :
stdin, stdout
Limită timp :
200 ms
Limită memorie :
2048 kbytes

Un criptolog amator îşi propune să construiască o maşină de cifrat care să cripteze un text alcătuit din exact N simboluri distincte. Cifrarea se realizează prin permutarea simbolurilor ce formează textul.

Criptologul nostru doreşte ca reconstituirea textului iniţial sǎ poată fi realizată trecând textul cifrat încă de K–1 ori prin procedura de cifrare. Cu alte cuvinte, dacă textul rezultat din prima cifrare este cifrat încă o data, rezultatul este cifrat din nou şi asa mai departe, plecând de la textul iniţial şi aplicând în total K operaţii de cifrare successive, trebuie să obţină textul iniţial.

Criptologul nostru ar vrea să afle, cunoscând N si K, numărul de moduri distincte în care poate fi realizată maşina de cifrat. Două moduri de realizare a maşinii diferă dacă, existǎ cel puţin un text în urma cifrării cǎruia, în cele două texte obţinute există cel puţin o poziţie în care se află simboluri diferite.

 

Date iesire

Scrieţi un program care determină restul împǎrţirii numărului de moduri distincte în care poate fi realizată maşina de cifrat la 19997.

 

Date iesire

Fişierul  conţine pe prima (şi singura) linie, două valori numerice naturale separate printr-un spaţiu, N şi K (cu semnificaţia din enunţ).

 

Date iesire

Fişierul va conţine pe prima linie, numǎrul de moduri distincte de realizare a maşinii de cifrat modulo 19997.

 

Date iesire

  • 1 ≤ N ≤ 2000;  2 ≤ K ≤ 1000000000
  • pentru 30% din teste N,K < 13
  • pentru 50% din teste N,K ≤ 100

 

Date iesire

  Exemplul 1:

  Date intrare

  Date iesire

  3 3

  3

  Exemplul 2:

  Date intrare

  Date iesire

  9 6

  11560

  Exemplul 3:

  Date intrare

  Date iesire

  100 200

  13767


Trimite o solutie

Format: cpp şi c

Selectează runda

Trebuie să fii logat pentru a trimite surse


Indicații rezolvare

Combinatorica


Comentarii

Adauga un comentariu: Click !