Revizia anterioară Revizia următoare
Fişierul intrare/ieşire: | blis.in, blis.out | Sursă | OJI 2012 - clasele 11-12 |
Autor | Dan Pracsiu | Adăugată de | |
Timp execuţie pe test | 0.3 sec | Limită de memorie | 36864 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Blis
Se consideră un şir de biţi şi un număr natural K. Şirul se împarte în secvenţe astfel încât fiecare bit din şir să aparţină unei singure secvenţe şi fiecare secvenţă să aibă lungimea cel puţin 1 şi cel mult K. După împărţire, fiecare secvenţă de biţi se converteşte în baza 10, obţinându-se un şir de valori zecimale. De exemplu, pentru şirul de biţi 1001110111101010011 şi K = 4, se poate obţine 1 0011 101 111 0 1010 011, apoi în baza 10: 1, 3, 5, 7, 0, 10, 3. O altă împărţire poate fi 1 00 1 1 10 11 110 1010 011, adică 1, 0, 1, 1, 2, 3, 6, 10, 3.
Cerinţă
Scrieţi un program care:
- determină valoarea maximă (în baza 10) care se poate obţine dintr-o secvenţă de cel mult K biţi
- împarte şirul iniţial în secvenţe de cel mult K biţi astfel încât şirul zecimal obţinut să conţină un subşir strict crescător de lungime maximă posibilă.
Date de intrare
Fişierul de intrare blis.in ...
Date de ieşire
În fişierul de ieşire blis.out ...
Restricţii
- ... ≤ ... ≤ ...
Exemplu
blis.in | blis.out |
---|---|
This is some text written on multiple lines. | This is another text written on multiple lines. |
Explicaţie
...