Un showroom din Strasbourg comercializează o gamă foarte mare de modele de autoturisme, aşezate pe linii. Pe câte o linie se găsesc numai modele de autoturisme comercializate de acelaşi dealer. Un dealer poate avea modele pe mai multe linii. Parlamentul European doreşte să-şi înoiască parcul auto şi trimite responsabilul cu activitatea de transport la showroom pentru a se informa cu privire la variantele pe care le are pentru rezolvarea acestei probleme de achiziţie. Responsabilul trebuie să aleagă de la primul dealer modele, de la al doilea dealer modele, etc.
Şirul de numere reprezintă termenii ai unei progresii aritmetice cu primul termen şi raţia . Dacă valoarea din şirul de numere este mai mare decât numărul de modele al dealerului corespunzător, atunci responsabilul nu mai alege nici un model al dealerului. Primul dealer este cel care are modelele pe prima linie şi, eventual, pe alte linii care urmează primei linii (dar nu neapărat consecutive!), al doilea dealer este cel care are modelele pe prima linie ce conţine modele diferite de cele ale primului dealer etc.
Cerinţă
Să se scrie un program care determină:
Numărul de dealeri prezenţi în showroom;
Numărul de modalităţi de achiziţie al modelelor de către Parlamentul European, .
Date de intrare
Fişierul de intrare showroom.in
conţine pe prima linie numerele separate prin exact un spaţiu, cu semnificaţia de mai sus, iar pe următoarele linii se află denumirile modelelor din enunţ, separate prin unul sau mai multe spaţii.
Fiecare linie se termină cu caracterul sfârşit de linie.
Date de ieşire
Fişierul de ieşire showroom.out
va conţine pe prima linie numărul cerut la subpunctul , iar pe a doua linie numărul cerut la subpunctul .
Restricţii şi precizări
- Denumirea unui model are cel mult de litere mici şi/sau cifre
- Pe o linie sunt cel mult de denumiri de modele şi nu pot exista mai mult de spaţii între două modele
- Pot exista linii cu numerele de ordine cu modele ale aceluiaş dealer, astfel încât perechile de linii au cel puțin un model de mașină în comun
- Pentru rezolvarea corectă a fiecarei cerinţe se acordă % din punctaj
- Acordarea punctajului pentru a doua cerință se face numai dacă în fișierul de ieșire există un răspuns pentru prima cerință, indiferent de corectitudinea acestuia
- Pentru % din teste se garantează că valoarea este mai mică sau egală decât
Exemplu
showroom.in
6 1 2 3
logan duster logan
peugeot207 peugeot307
sandero sandero
opelcorsa opelastra opelcorsa
peugeot207
sandero duster
showroom.out
3
3
Explicație
La showroom sunt dealeri.
Dealerul : logan
, duster
, sandero
.
Dealerul : peugeot207
, peugeot307
.
Dealerul : opelcorsa
, opelastra
.
Primii trei termeni din progresia aritmetică sunt . ; ; .
Modalităţile de achiziţie ale modelelor de la dealerul , a niciunui model de la dealerul şi a două modele de la dealerul sunt următoarele:
logan, opelcorsa, opelastra
;duster, opelcorsa, opelastra
;sandero, opelcorsa, opelastra
.