Clasa a IX-a
Ziua 1
Problema 3
Codificare
Pentru transmiterea unor texte codificate se folosesc literele din
configuratia de mai jos:
In acesta configuratie se formeaza cinci patrate pe care le vom numerota cu 1
patratul de sus, 2 patratul din stanga, 3 patratul din mijloc, 4 patratul din
dreapta, respectiv 5 patratul de jos. Pentru patratele configuratiei se
stabileste o ordine si un sens de rotire al fiecaruia.
Codificarea unui text se face prin codificarea fiecarui caracter in parte, in
ordinea in care apar in text, astfel:
- Inainte de codificarea fiecarui caracter, caracterele fiecarui patrat din
configuratia anteriora se rotesc, in ordinea si sensurile precizate, cu o
pozitie. Initial se porneste de la configuratia data.
- Ulterior, pentru codificarea unui caracter se va folosi configuratia
rezultata dupa codificarea caracterului anterior.
- Unui caracter din configuratia initiala prin codificare ii va corespunde
caracterul de pe aceeasi pozitie din configuratia finala.
Pentru un text, care contine cel mult 500 de caractere existente in
configuratia data, se cere sa se obtina codificarea acestuia.
Intrare:
In fisierul COD.IN, care contine 3 linii, se dau:
p1 p2 p3 p4 p5 - numerele asociate patratelor in ordinea rotirii lor
s1 s2 s3 s4 s5 - sensul de rotire al caracterelor in p1,p2,p3,p4,p5
(1 -rotire spre dreapta, 0 -rotire spre stanga)
textul - secventa de caractere ce urmeaza a fi codificata
Iesire:
Fisierul COD.OUT va contine pe o singura linie textul codificat.
Exemplu
Fisierul COD.IN
1 2 4 5 3
1 1 0 1 1
CcfuA
Fisierul COD.OUT
Bafta
Punctaj: 35 puncte.
Timp de rulare pentru un test: 2 secunde.