Sunteți pe pagina 1din 1

Ministerul Educaiei, Cercetrii,Tineretului i Sportului

Olimpiada Judeean de Informatic


3 martie 2012
Sursa: ID1.c, ID1.cpp, ID1.pas

Problema 1 - blis

Clasele XI i XII

100 puncte

Se consider un ir de bii i un numr natural K. irul se mparte n secvene astfel nct fiecare bit din
ir s aparin unei singure secvene i fiecare secven s aib lungimea cel puin 1 i cel mult K.
Dup mprire, fiecare secven de bii se convertete n baza 10, obinndu-se un ir de valori
zecimale. De exemplu, pentru irul de bii 1001110111101010011 i K = 4, se poate obine 1
0011 101 111 0 1010 011, apoi n baza 10: 1, 3, 5, 7, 0, 10, 3. O alt mprire
poate fi 1 00 1 1 10 11 110 1010 011, adic 1, 0, 1, 1, 2, 3, 6, 10, 3.
Cerin
Scriei un program care:
determin valoarea maxim (n baza 10) care se poate obine dintr-o secven de cel mult K bii
mparte irul iniial n secvene de cel mult K bii astfel nct irul zecimal obinut s conin un
subir strict cresctor de lungime maxim posibil.
Date de intrare
Prima linie a fiierului de intrare blis.in conine numrul natural K, iar pe linia a doua se afl irul
de bii, irul neconinnd spaii.
Date de ieire
Fiierul de ieire blis.out va conine pe prima linie un numr natural reprezentnd valoarea
maxim care se poate obine dintr-o secven de cel mult K bii, iar pe linia a doua un singur numr
natural reprezentnd lungimea maxim a subirului strict cresctor care se poate obine din irul de bii
prin mprirea sa n secvene de cel mult K bii.
Restricii i precizri
3 lungimea irului de bii 100 000
pentru 70% din teste, lungimea irului de bii 1000
1 K 30
Un subir se obine dintr-un ir prin eliminarea a zero, unul, dou sau mai multe elemente;
O secven este format din elemente aflate pe poziii consecutive n ir;
Pentru rezolvarea corect a primei cerine se acord 20% din punctaj, iar pentru rezolvarea corect
a celei de-a doua se acord 80%.
Exemplu
blis.in
4
1001110111101010011

blis.out
15
6

Explicaie
Secvena de valoare maxim de cel mult 4 bii
este 1111, adic 15 n baza 10.
Pentru cerina a doua, irul binar se mparte astfel:
1 00 1 1 10 11 110 1010 011,
Se obine irul zecimal:
1, 0, 1, 1, 2, 3, 6, 10, 3.
Subirul strict cresctor maximal de lungime 6
este 0, 1, 2, 3, 6, 10

Timp maxim de executare: 1.5 secunde/test


Memorie total disponibil: 32 MB (segment de date + stiv).
Dimensiune maxim a sursei: 10 KB.

S-ar putea să vă placă și