Babilonienii au dezvoltat un sistem pozițional de scriere a numerelor, în care orice număr natural se poate reprezenta utilizând semnele:
Semn | Cifra |
---|---|
unu | |
zece |
Valorile din {, , , } se obțin scriind semnul pentru unu de ori
Exemplu: scrierea babiloniană a lui este
Numerele , , , se obțin ca succesiuni de semne urmate de semne
Exemplu: se reprezintă ca
Sistemul folosește gruparea unităților câte șaizeci. Astfel, pentru a scrie numărul șaizeci se folosește același semn ca pentru unu, dar valoarea sa este dată de poziția în care se găsește semnul.
Babilonienii nu foloseau cifra . Pentru poziţionarea corectă a semnelor se utiliza spațiu:
Exemple:
Număr | Reprezentare |
---|---|
Se codifică scrierea babiloniană a unui număr astfel:
Cifră | Semn |
---|---|
Exemple:
Scrierea babiloniană | Codificarea scrierii babiloniene | Valoarea zecimală a numărului |
---|---|---|
Cerință
Dându-se un număr natural și un șir de cifre dintre {, , }, reprezentând codificarea scrierii babiloniene a unui număr natural, să se determine:
- numărul maxim de cifre aflate pe poziții consecutive în codificarea scrierii babiloniene date;
- numărul natural din sistemul zecimal corespunzător scrierii babiloniene date.
Date de intrare
Fișierul de intrare babilon.in
va conține:
- pe prima linie un număr natural ();
- pe a doua linie un număr natural ;
- pe a treia linie cifre separate prin câte un spațiu, reprezentând codificarea scrierii babiloniene a unui număr natural.
Date de ieșire
Dacă valoarea lui este , atunci se va rezolva numai punctul din cerință. În acest caz, fişierul de ieşire babilon.out
va conţine pe prima linie un număr natural reprezentând numărul maxim de cifre aflate pe poziții consecutive în codificarea scrierii babiloniene date.
Dacă valoarea lui este , atunci se va rezolva numai punctul din cerință. În acest caz, fişierul de ieşire babilon.out
va conţine pe prima linie numărul natural corespunzător scrierii babiloniene date.
Restricţii şi precizări
- ;
- se garantează faptul că numărul de cifre al rezultatului de la punctul (numărul zecimal) este mai mic decât ;
- din teste vor avea pe prima linie valoarea , iar restul de din teste vor avea pe prima linie valoarea .
Exemplul 1
babilon.in
1
8
1 1 3 2 1 1 1 2
babilon.out
3
Explicație
1 1 1
Cea mai lungă secvență de cifre are lungimea .
Exemplul 2
babilon.in
2
7
1 1 3 2 1 1 1
babilon.out
7213
Explicație
se înmulțește de două ori cu (o dată pentru că este urmat de spațiu și încă o dată pentru că precede o grupă care începe cu semnul pentru zece), apoi se adună valoarea .
Exemplul 3
babilon.in
2
9
1 1 1 2 1 1 2 2 1
babilon.out
11541
Explicație
se înmulțește cu de două ori pentru că este precedat de două grupe care încep cu semnul pentru zece, apoi se adună înmulţit cu şi la final se adună .