Problema 1

Sa se scrie un program pentru realizarea unui top al melodiilor. Persoanele care participa la alcatuirea topului se impart in 4 categorii, dupa sex si varsta (mai tineri de 20 de ani si peste 20 de ani). Fiecare persoana nominalizeaza, in ordine, 5 melodii preferate, fiecare identificata prin titlu. Datele privind persoanele participante la realizarea topului se citesc dintr-un fisier text, al carui nume va fi dat ca si parametru in linia de comanda. Pentru fiecare persoana se citesc 6 linii de date de forma:
nume prenume sex(m|f) varsta 
titlu1
titlu2
titlu3
titlu4
titlu5
Sa se afiseze:
1. Lista melodiilor in ordinea popularitatii lor
2. 4 liste separate cuprinzand numele si prenumele persoanelor care au mentionat pe prima pozitie a preferintelor lor una din cele 3 melodii cele mai solicitate la categoria lor.

Programul va fi realizat modular. In alegerea structurilor de date se va urmari un consum minim de memorie. De asemenea, se recomanda un numar minim de accese la hard-disk.



Problema 2

Se considera un circuit care contine doar rezistente in conexiune serie, paralel. Circuitul are M noduri si N rezistente. Pentru fiecare rezistenta se cunosc nodurile intre care este legata rezistenta si valoarea rezistentei. Se cere determinarea rezistentei echivalente intre nodurile 1 si M.

Datele de intrare se citesc dintr-un fisier text organizat in felul urmator:

Pe prima linie, numarul N de rezistente
Pe linia urmatoare, numarul M de noduri.
Pe liniile urmatoare, se introduc datele despre cele N rezistente, fiecare pe cate o linie, 
in formatul:
nod_capat1 nod_capat2 valoare_rezistenta

Observatie. Algoritmul de calcul este usurat daca nodurile se numeroteaza 
de la stinga la dreapta iar nod_capat1 este mai mic decat nod_capat2 
pentru fiecare rezistenta .

Se va afisa valoarea rezistentei echivalente intre nodurile 1, M.

Daca programul constata ca de la un moment dat numarul de rezistente nu mai poate fi redus utilizand regulile de conectare serie si paralel a rezistentelor(inseamna ca s-au detectat conexiuni stea, triunghi), va afisa un mesaj de eroare si se afiseaza configuratia la care s-a reusit reducerea circuitului.

Exemplu:

Pentru circuitul din figura, fisierul cu datele de intrare este de forma:

3
3
1 2 3
2 3 12
2 3 6
Rezultatul afisat de program(rezistenta echivalenta calculata intre nodurile 1 si 3) este: 7