Fişierul intrare/ieşire:excel.in, excel.outSursăONI 2007, clasa 7
AutorAdrian Nita, Maria NitaAdăugată depeanutzAndrei Homorodean peanutz
Timp execuţie pe test0.9 secLimită de memorie5120 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Excel

Gigel s-a calificat la ONI 2007. Din pacate, sau din fericire, se intalneste iarasi cu o problema asemanatoare celei de la OJI, Excel.
Reamintim ca o foaie de calcul in Excel se prezinta sub forma unei suprafete liniate cu linii orizontale si verticale. Prin intersectia lor rezulta dreptunghiuri (numite celule), fiecare celula avand un nume format din una sau mai multe litere si un numar, reprezentand coloana, respectiv linia pe care se afla. De exemplu, celula din stanga sus este A1, urmata, pe linie, de B1, C1, ... , Z1, AA1, AB1, .. . BA1, ... .

AB... Z AAAB... AZBA...
1A1B1...Z1AA1AB1...AZ1BA1...
2A2B2...Z2AA2AB2...AZ2BA2...
3A3B3...Z3AA3AB3...AZ3BA3...
.................................

Cerinta

Dandu-se mai multe celule sub forma LxCy, precum si valorile aflate in aceste celule, sa se afiseze numele celulelor folosind codificarea standard explicata mai sus.
Se defineste o foaie Excel ca fiind delimitata de linia 1, coloana 1, linia n, coloana m si se completeaza aceasta foaie cu valorile aflate in celulele descrise anterior. Indicii n si m reprezinta indicele celei mai mari linii, respectiv coloane in care exista o valoare diferita de zero. In aceasta foaie se realizeaza insumarea valorilor la prima coloana. Se cere sa se afiseze rezultatele obtinute in aceasta coloana incepand cu celula A1 pana in celula An.

Date de intrare

Fisierul excel.in contine mai multe linii, fiecare fiind de forma:
LxCy val unde LxCy reprezinta o celula data prin linia x, respectiv coloana y, iar val valoarea numerica pe care o contine aceasta celula. 

Date de iesire

Fisierul excel.out va contine cate o linie corespunzatoare fiecarei linii din fisierul de intrare. Pe fiecare linie se va scrie numele celulei corespunzatoare din fisierul de intrare in formatul descris in enunt (ColoanaLinie). In plus fisierul de iesire va mai contine o linie ce va descrie coloana A, obtinuta in urma operatiilor de insumare. Pe aceasta coloana fiind mai multe valori dintre care foarte multe valori nule, se vor afisa: valoarea din celula Ak daca exista o valoare numerica diferita de 0, sau nr 0, unde nr reprezinta cate valori 0 consecutive sunt intre doua celule Ai Aj, unde i<j, Ai diferit de 0, Aj diferit de 0 si Ak=0, cu i<k<j.

Restrictii

  • 1 ≤ indicele de linie(x) ≤ 30 000 000
  • 1 ≤ indicele de coloana(y) ≤ 30 000 000
  • Foaia de calcul, inainte de citirea fisierului de intrare, se considera a fi "umpluta" cu valoarea zero
  • In fisierul de intrare sunt cel mult 300 de linii
  • Intre LxCy si val exista un singur spatiu
  • Fisierul de intrare va contine, dupa ultima linie, Enter
  • Se acorda 30% din punctaj pentru afisarea corecta a numelor celulelor descrise in fisierul de intrare

Exemplu

excel.inexcel.out
L1C1 23
L3C1 100
L1C3 -100
L29999999C26 50
L52C52 25
L53C17576 24
L53C17602 100
A1
A3
C1
Z29999999
AZ52
YYZ53
YZZ53
-77 1 0 100 48 0 25 124 29999945 0 50
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?

remote content