Bacanul
din colt e un tip de treaba. In fiecare seara imi fac cumparaturile la el si
de multe ori il gasesc stand pana tarziu pentru a "face casa". Mai
exact, el analizeaza lista vanzarilor din ziua respectiva si totalizeaza aceste
vanzari pe produse, obtinand astfel un document denumit situatia vanzarilor.
In lista vanzarilor apare o linie pentru fiecare vanzare facuta sub forma:
nume_produs * cantitate
Cantitatea este exprimata intotdeauna in unitatea de masura specifica produsului.
Numele produsului este separat de cantitate prin caracterul *
(asterisc) precedat si urmat de cate un singur spatiu.
De exemplu:
Cascaval * 2
Bere Tuborg * 6
Varza * 1
Bere Tuborg * 2
Cascaval * 3
In situatia vanzarilor, produsele trebuie sa apara in ordine alfabetica, cate
un produs pe o linie. Pe linia corespunzatoare unui produs este scris numele
acestuia urmat de * si apoi de
cantitatea totala vanduta din produsul respectiv. Caracterul *
trebuie sa fie precedat si urmat de cate un singur spatiu.
De exemplu, pentru lista de vanzari precedenta situatia vanzarilor va arata
astfel:
Bere Tuborg * 8
Cascaval * 5
Varza * 1
Fiindca si eu sunt un tip de treaba si nu e mare lucru sa-i fac un program care
sa-i genereze situatia vanzarilor, as vrea sa fac acest lucru, dar ... niciodata
nu am timp.
Cerinta
Scrieti un program care
sa citeasca lista vanzarilor dintr-o zi si care sa genereze situatia de vanzari.
Date de intrare
Fisierul de intrare bacan.in
contine pe prima linie numarul natural n
reprezentand numarul de vanzari efectuate in ziua respectiva. Urmeaza n
linii, pe fiecare linie fiind descrisa o singura vanzare, sub forma din enunt.
Date de iesire
Fisierul de iesire bacan.out
va contine pe prima linie numarul natural p
reprezentand numarul de produse distincte vandute in ziua respectiva. Pe urmatoarele
p linii sunt descrise produsele
vandute, sub forma specificata in enunt.
Restrictii si precizari
1 <= n <= 100 000
1 <=
Numarul de produse vandute <= 1000
Numele unui produs contine
maxim 20 de caractere (litere
mari, litere mici si spatii). Evident, un nume nu incepe si nu se termina
cu spatiu.
La o vanzare cantitatea
nu depaseste 100 de unitati.
Exemplu
bacan.in
bacan.out
5
Cascaval * 2
Bere Tuborg * 6
Varza * 1
Bere Tuborg * 2
Cascaval * 3
3
Bere Tuborg * 8
Cascaval * 5
Varza * 1
prof. Marinel
Serban
Liceul de Informatica
"Grigore Moisil" Iasi
Contact:marinel_serban@yahoo.com