#1562
Abba
Pentru transmiterea unui mesaj format exclusiv din litere mici ale alfabetului englez, se utilizează un aparat electronic care are anumite limitări tehnice. Astfel, el poate transmite mesaje formate doar din litere vecine din alfabet sau formate din aceeași literă. De exemplu mesajul: defffedcbab
poate fi transmis, iar mesajul accded
nu poate fi transmis deoarece literele a
și c
nu sunt vecine în alfabetul englez.
Din acest motiv mesajul ce urmează să fie transmis trebuie codificat pentru a fi compatibil cu aparatul.
Pentru codificare, mesajul este prelucrat în etape până satisface limitările aparatului. O etapă de prelucrare presupune inserarea între fiecare două litere vecine ale mesajului a literei mijlocii. Litera mijlocie este acea litera situată la jumătatea secvenței din alfabet ce are capete literele vecine. Dacă nu există se ia în considerare litera mai mică.
Determinați numărul de etape de prelucrare necesare pentru codificarea mesajului și lungimea finală a mesajului.
Olimpiada Locală de Informatică, Timișoara, 2016
Problema | Abba | Operații I/O |
abba.in /abba.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 1 MB
/
Stivă 1 MB
|
Id soluție | #53943535 | Utilizator | |
Fișier | abba.cpp | Dimensiune | 837 B |
Data încărcării | 15 Noiembrie 2024, 12:46 | Scor / rezultat | 80 puncte |
abba.cpp: In function 'int main()': abba.cpp:14:33: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i=0; i<cuv.length()-1; i++) ^ abba.cpp:19:41: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int j=0; j<cuv.length()-1; j=j+2) ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
0 | 0 secunde | OK. | 10 | 10 | ||
1 | 0 secunde | OK. | 10 | 10 | ||
2 | 0 secunde | OK. | 10 | 10 | ||
3 | 0 secunde | OK. | 10 | 10 | ||
4 | 0 secunde | OK. | 10 | 10 | ||
5 | 0 secunde | OK. | 10 | 10 | ||
6 | 0.016 secunde | OK. | 10 | 10 | ||
7 | 0.064 secunde | OK. | 10 | 10 | ||
8 | Depășit | Limita de timp depășită | 10 | 0 | ||
9 | Depășit | Limita de timp depășită | 10 | 0 | ||
Punctaj total | 80 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Abba face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.