criptare
Gigel si Ionel vor sa-si trimita mesaje pe care nimeni sa nu le înteleaga. Au citit ei despre spioni si modalitati de a scrie mesaje si, în final, au imaginat un mod de criptare a unui mesaj care foloseste “cuvinte cheie” (le-a placut lor denumirea asta :-) ).
Alegându-si un cuvânt cheie format numai din litere distincte, ei numara literele acestuia si împart mesajul în grupe de lungime egala cu numarul de litere al cuvântului cheie, si le aseaza una sub alta. Desigur, se poate întâmpla ca ultima grupa sa fie incompleta, asa ca o completeaza cu spatii. Apoi numeroteaza literele cuvântului cheie în ordinea din alfabet. În final, rescriu mesajul astfel: coloana de sub litera numerotata cu 1, urmata de coloana de sub litera numerotata cu 2, etc. înlocuind totodata si spatiile cu caracterul ‘*’ (asterisc).
Exemplu:
cuvântul cheie
criptam
mesaj de criptat Incercam
sa lucram cu coduri si criptari.
cuvântul cheie criptam are 7 litere
numerotare 2635714
împartire în grupe Incerca|m sa lu|cram cu| coduri|
si cri|ptari.
codificare 2635714
Incerca
m*sa*lu
cram*cu
*coduri
*si*cri
ptari.*
mesaj criptat clcrr.Imc**pcsaoiaauuii*eamd*rn*rcstr**uci
col1 col2 col3 col4 col5 col6 col7
Cerinta
Dat un cuvânt cheie si un mesaj criptat, decodificati mesajul trimis de Gigel pentru Ionel.
Date de intrare
Fişierul de intrare criptare.in contine pe prima linie mesajul criptat iar pe linia a doua cuvântul cheie.
Date de iesire
Fisierul de intrare criptare.out contine pe prima linie mesajul decriptat.
Restrictii
· lungimea
mesajului este de minim 5 si maxim 1000 caractere
· cuvântul
cheie are minim 5 si maxim 20 caractere
· cuvântul
cheie conţine numai litere mici ale alfabetului
Exemplu
criptare.in |
criptare.out |
clcrr.Imc**pcsaoiaauuii*eamd*rn*rcstr**uci |
Incercam sa lucram cu coduri si criptari. |
Timp maxim de executie/test: 1 secunda