Page 160 - MATINF Nr. 1
P. 160
˘
160 PROBLEME DE INFORMATICA PENTRU CONCURSURI
I 9 (descifrare). Taberele sunt de fiecare dat˘a pline de activit˘at , i care r˘amˆan mult timp ˆın
mint , ile copiilor. Timpul petrecut ˆın compania altor copii ofer˘a ocazia de a socializa, de a
face prieteni noi s , i de a participa la diverse activit˘at , i. Secretul unei tabere reus , ite este s˘a fie
ˆ
organizate mai multe tipuri de activit˘at , i. In vacant , a de iarn˘a, mai mult , i elevi ai clasei a IV-a
de la s , coala Amicii Istet , i au mers ˆımpreun˘a ˆın tab˘ar˘a. Unul dintre jocurile care le-a trezit
interes a fost cel care le oferea posibilitatea s˘a descifreze un mesaj. Astfel, ei aveau la dispozit , ie
un dict , ionar format din cuvinte uzuale precum s , i o ˆıns , iruire de cifre, f˘ar˘a cifra 0. Echipa
cˆas , tig˘atoare trebuie s˘a determine prima mesajul ce se ascunde ˆın spatele cifrelor, constˆand
dintr-o succesiune de cuvinte separate prin cˆate un spat , iu.
Fiecare cifr˘a are asociat˘a un grup de litere. Cifra 2 este asociat˘a literelor A, B sau C, cifra 3
este asociat˘a literelor D, E s , i F, cifra 4 este asociat˘a literelor G, H s , i I, cifra 5 este asociat˘a
literelor J, K s , i L, cifra 6 este asociat˘a literelor M, N s , i O, cifra 7 este asociat˘a literelor P, Q, R
s , i S, cifra 8 este asociat˘a literelor T, U s , i V, cifra 9 este asociat˘a literelor W, X, Y s , i Z, iar cifra
1 este asociat˘a tastei Spat , iu. Prin urmare, dac˘a mesajul este format din cifrele 2 8 1, textul
ascuns poate fi A T Spat , iu sau A U Spat , iu, etc, cuvintele corespunz˘atoare s , irurilor de cifre
putˆand fi: AT, AU, etc.
Pentru un posibil text ascuns obt , inut prin descifrarea consecutiv˘a a cifrelor mesajului, se
opresc doar cuvintele care exist˘a ˆın dictionar, iar fiecare liter˘a a unui cuvˆant care nu este ˆın
dictionar va fi ˆınlocuit˘a cu un caracter *. Se vor verifica toate posibilit˘at , ile de formare a unui
cuvˆant conform regulilor de mai sus. Dac˘a exist˘a mai multe cuvinte care corespund unei anumite
secvent , e de cifre, va fi afis , at primul.
Cerint , ˘a
Scriet , i un program care s˘a descifreze mesajul transmis.
Date de intrare
Fis , ierul de intrare desc.in cont , ine:
M - num˘arul de cuvinte din dict , ionar;
C 1
C 2
. . .
C M - C 1 , C 2 , . . . , C M reprezint˘a cuvintele din dict , ionar;
N - num˘arul de cifre din mesajul ce urmeaz˘a a fi decriptat;
cif 1 cif 2 . . . cif N - cifrele ce urmeaz˘a a fi decriptate.
Date de ies , ire
Fis , ierul de iesire desc.out cont , ine pe o singur˘a linie mesajul generat respectˆand regulile date.
Restrict , ii s , i preciz˘ari
• 1 ≤ M, N ≤ 100
• cif i ∈ {1, 2, . . . , 9}, oricare i ∈ {1, 2, . . . , N}