.campion
conectare | înregistrare | căutare
Pagina principală » Probleme » cifru2

ultima problemă
grupă: mică
sursă: OMI 2016
ultimul articol
autor: Prof. Radu Vişinescu
ultimul software
autor: Prof. Emanuela Cerchez
cifru2


Timp maxim de execuţie / test:
0.2s
Memorie totala disponibilă / stivă:
2MB / 1MB

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 succesive, 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.

Cerinţă

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 de intrare

Fişierul cifru2.in 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 de ieşire

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

Restricţii

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

Exemple

cifru2.incifru2.out
3 3 3
9 6 11560
100 200 13767

autor: Prof. Stelian Ciurea
propunător: Prof. Emanuela Cerchez
Liceul de Informatica ″Grigore Moisil″
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De la OJI 2006: ecuatii, graf, flori, pluton, elfi, mare, grupe1, cifre2, piramida, vraji, case1
De acelaşi autor: numar, submat, 2numere, desc, log, patrate4, scara2, camion1, frunze, grade, numar3, cmmmc, ai, robot3, expresie2, cifre4, robot4, momente
Despre divizibilitate: celule, cai, trei, ruleta, an, factori, perechi, anagrame, axa, perspic, scara, programs, iepuras2, fry, policefm, turist, kfactor, cuc, prime, sqr, evaluare, factk, div3, divizor, euclid, stop, matricea, mutare, viteza, ingerasi, prieteni, robinson, romeo, perechi1, sume1, fact, tzigla, elfi, vraji, desen2, exponent, trapez, resturi, exp1, ron, spirala1, gardul, tort, poligon3, sume2, smith, biliard, printesa, secvente1, ultime4, padure, multiplu1, 235, iepurasi, numar3, cmmmc, randomizare, divizori, pitag, bileprime, pin, canguri, numar4, jocprim, covor, nivfractie, cmmdcsecv, ai, grupe2, numerus, sport2, fagure, grad2, sumdivprod, oak, sumprod, paisprezece, numere10, proddiv, puncte4, trifoi, cartier, alune, intersectii, divider, minm, numere11, prodnr, boltz, vistiernic, secvp, extraprime, divizori1, cumpanit, cntgcd, nrdiv, numere12, daruri, imprimanta, puteri, reflex, tg, sprime, diferenta, concurs4, vapoare, inventie, prime2
Despre combinatorică: manevre, carti, bonuri, test, cub, nspecial, circuit, numere, cs, pluricex, parent, gray, siruri, anagrame, party, net, scaune, sir, monede, aztec, nrcuv2, perm, race, hanoig, red, grup, hperm, depou, grazing, pm, reteta2, playlist, young, pizza1, albine, caramele, teatru1, tub, robot1, sir23, soldati1, concurs1, comb, expresii, arbnr, cod1, munte, shgraf, desc, lex, munte1, maxperm, role, avere, vizibil, prime1, hexa, patrat, carti2, puncte2, pact, aranjari, numere5, borg, acolor, sg1, perfect, bile4, pviz, culmi1, piramida1, trapez, frunze, sir7, logic, coduri, jetoane, kperms, tablite, secvpar, lego, permutari, binperm, multiplu1, operatii, fotbal, kbiti, jucarii, bradut, expozitie, parbit, kmax, petrecere, tango, rege, cd1, cifru3, kcons, bubblesort, hawaii, randomizare, kdist, reuniune, echipa, ghinion, cavaleri, camera616, covor, subm, grupuri, pavari, asfalt, adunscad, rotund, sport2, arbore1, lant1, module, nrperm, oneton, nrpomi, cover1, nrpal, probleme, optim, poly, vot1, sudoku1, flori2, xnumere, showroom, cntgcd, subsets, nkd, nrgraf, spion1, puteri, stiva1, permtr, relatii, 2sah, matcnt, magic7, nmult, roua
Despre recurenţă: nrbun2, nrbun, grupe, palind, siruri, vecini, net, pioni, sir2, perm, red, sume3, pavaj, div3, descfib, robot1, soldati1, expresii, agitatie, aparitii, apel, randuri, zidar, log, maxq, cover, dist, munte1, sir1, vizibil, csir, puncte2, aranjari, numere5, anticip, bsir, evantai, sg1, zumzi, lant, perfect, numere8, poarta, pviz, poli, desert, echitabil, patrate6, kperms, jump, petrecere, rege, triunghi3, sir9, arbore1, fibgcd, cds, wg, module, nr0, cover1, culori1, 2ndesc, flori2, cntgcd, 2sah, matcnt, nmult
Chestionare recomandate
surse trimise | ajutor