Sunteți pe pagina 1din 1

OLIMPIADA NAIONAL DE INFORMATIC

GIMNAZIU
BACU, 5-8 FEBRUARIE 2008

Problema 2 - tablou

CLASA a VI-a

100 puncte

Se consider un tablou bidimensional de dimensiuni date m (numrul de linii) i n (numrul de coloane), ale crei elemente sunt
cifre ale sistemului de numeraie zecimal. Cu elementele unei linii se construiete un numr scris n cea mai mic baz posibil,
utiliznd toate cifrele de pe linia respectiv, luate de la stnga la dreapta. Se spune c acest numr se ataeaz liniei respective. Dup
aceast regul se ataeaz numere fiecrei linii, numere care se transform apoi n baza 10. Se identific cel mai mare numr scris n
baza 10 dintre numerele ataate fiecrei linii i linia pe care se afl; dac sunt mai multe linii pe care se afl cel mai mare numr, se
alege cea cu indicele cel mai mic (cea mai de sus). S notm indicele acestei linii cu p. De pe linia p se identific, dac exist,
coloana cu indicele cel mai mic (cea mai din stnga) pe care se afl o cifr par. S notm indicele acestei coloane cu q. Dac exist o
astfel de coloan, atunci se elimin din tablou linia p i coloana q. Prin eliminare, numrul de linii i numrul de coloane ale tabloului
scad cu 1, astfel, dac, de exemplu, s-ar elimina linia 3, atunci linia 4 va deveni linia 3, linia 5 va deveni linia 4, ..., linia m va deveni
linia m-1, iar dac, de exemplu, s-ar elimina coloana 4, atunci coloana 5 va deveni coloana 4, coloana 6 va deveni coloana 5, ...,
coloana n va deveni coloana n-1. S-a obinut astfel un nou tablou bidimensional, n care liniile se consider avnd indicii 1, 2, ... ,
.a.m.d., iar coloanele indicii 1, 2, ... , .a.m.d. Dac pe linia p nu se poate gsi o cifr par, tabloul nu se modific.
Se reia procedeul de mai sus pentru noul tablou, ncepnd cu ataarea numerelor pentru noile linii, identificarea celui mai mare
numr n baza 10, identificarea liniei p i coloanei q (dac exist) i apoi eliminarea liniei p i coloanei q, dac este cazul. Procedeul se
oprete fie cnd nu se mai identific pe linia p o cifr par, fie cnd cel puin una dintre dimensiunile tabloului (numrul de linii sau
numrul de coloane) a ajuns la valoarea 1.
Cerin
Dndu-se tabloul bidimensional cu m linii i n coloane, se cere:
a) S se afieze bazele minime care au fost alese pentru fiecare numr ataat fiecrei linii din tabloul iniial;
b) S se afieze cel mai mare numr scris n baza 10 dintre numerele ataate tabloului iniial;
c) S se afieze numrul de linii i numrul de coloane pentru tabloul final, precum i tabloul final.
Date de intrare
Fiierul de intrare tablou.in va conine:
- pe prima linie din fiier se afl numrul natural m care reprezint numrul de linii i numrul natural n care reprezint
numrul de coloane din tabloul iniial, numere separate ntre ele printr-un spaiu
- pe urmtoarele m linii cte n numere separate dou cte dou printr-un spaiu
Date de ieire
Fiierul de ieire tablou.out va conine:
- pe prima linie se vor afia m numere separate dou cte dou printr-un spaiu, reprezentnd bazele conform cerinei a);
- pe a doua linie se afl numrul solicitat conform cerinei b);
- pe a treia linie se afl numrul de linii i numrul de coloane pentru tabloul final, numere separate printr-un spaiu (fie acestea
x i y);
- pe urmtoarele x linii se afl cte y numere separate dou cte dou printr-un spaiu.
Restricii i precizri
2 m,n 10.
Cel mai mare numr ataat unei linii, numr scris n baza 10 este 2 000 000 000. Cea mai mic baz n care poate fi scris un numr
ataat unei linii este baza 2 i cea mai mare este 10.
Se acord punctaje pariale: cerina a) 20% din punctaj, cerina b) 20% din punctaj, cerina c) 60% din punctaj.
Exemplu
tablou.in
tablou.out Explicaie
4 4
2 3 4 4
Numerele ataate liniilor sunt: 1011 n baza 2, 2012 n baza 3, 1313 n baza 4, 3000 n baza 4.
1 0 1 1
192
Valorile acestora n baza 10 sunt: 11, 59, 119, 192. Cel mai mare este 192 i se afl pe linia 4.
2 0 1 2
2 2
Primul element par de pe linia 4 este pe coloana a doua. Se vor elimina deci linia 4 i coloana
1 3 1 3
1 1
2. Tabloul rmas are 3 linii i 3 coloane i are valorile:
3 0 0 0
1 3
111
212
113
i se reia procedeul.
Numerele ataate liniilor noului tablou sunt: 111 n baza 2, 212 n baza 3, 113 n baza 4.
Valorile acestora n baza 10 sunt: 7, 23, 23. Cel mai mare este 23, iar primul egal cu 23 se afl
pe linia 2. Primul element par de pe linia 2 este pe prima coloan. Se vor elimina deci linia 2
i coloana 1. Tabloul rmas are 2 linii i 2 coloane i are valorile:
11
13
i se reia procedeul.
Numerele ataate liniilor sunt: 11 n baza 2, 13 n baza 4. Valorile acestora n baza 10 sunt: 3,
7. Cel mai mare este 7 i se afl pe linia 2. Pe aceast linie nu se afl niciun element par, deci
procedeul se ncheie.

Timp maxim de execuie/test: 1 secund

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