Lliga de futbol Y76401


Statement
 

pdf   zip

thehtml

Després de molts entrebancs, la Federació Catalana de Futbol ha reeixit a organitzar la Lliga Nacional Catalana de Futbol i ha demanat a la FIB que els ajudi amb la gestió de les dades dels resultats de la temporada.

Concretament, heu de fer un programa tal que donat un enter n ≥ 2 i n noms diferents d’equips de futbol catalans i després un nombre indeterminat de resultats en forma de quàdruples:

equip1  ‍ ‍ gols1  ‍ ‍ equip2  ‍ ‍ gols2

que representen el resultat d’un partit, calculi la classificació final tenint en compte que l’ordre ve donat per:

  1. El nombre de punts (partit guanyat: 3 punts, partit empatat: 1 punt).
  2. En cas d’empat a punts, va primer qui té millor diferència de gols (diferència entre gols fets i gols rebuts).
  3. En cas d’empat en tots dos casos anteriors, qui te el nom d’equip més petit en ordre lexicogràfic.

Per a fer aquest programa cal fer servir aquesta estructura:

struct Equip
{
    string nom;
    int gols_favor;
    int gols_contra;
    int guanyats;
    int empatats;
};

Observació

El nombre n ≥ 2 d’equips no ha de ser necessàriamen parell. De la mateixa manera, els partits que hi haurà no han de ser necessàriament tots els possibles (és a dir, tots contra tots a casa i a fora).

Tot i que és irrellevant per al vostre programa, un partit no podrà aparèixer més d’una vegada, ni tan sols amb resultats diferents.

En un partit només hi apareixeran equips que hagin aparegut a la llista inicial d’n equips.

No es pot fer servir l’operació sort de la biblioteca stl. Si heu d’ordenar algun vector, ho heu de programar vosaltres. I si fos el cas, qualsevol mètode d’ordenació dels que heu estudiat és vàlid.

Fixeu-vos en el segon exemple: tots els equips han guanyat el mateix nombre de partits i tots tenen la mateixa diferència de gols. Els equips van ordenats en aquest cas en ordre lexicogràfic.

Entrada

Un enter n ≥ 2 i n noms d’equip de futbol seguits d’un nombre indeterminat de resultats en forma de quàdruples:

equip1  ‍ ‍ gols1  ‍ ‍ equip2  ‍ ‍ gols2

que representen el resultat d’un partit.

Sortida

La classificació final en el format indicat als exemples, i amb els criteris d’ordenació esmentats a l’enunciat.

Public test cases
  • Input

    4
    CEEuropa
    FCBarcelona
    Girona
    Olot
    
    CEEuropa 2 FCBarcelona 1
    CEEuropa 2 Girona 2
    CEEuropa 5 Olot 0
    FCBarcelona 4 CEEuropa 3
    FCBarcelona 3 Girona 3
    FCBarcelona 2 Olot 1
    Girona 3 CEEuropa 3
    Girona 2 FCBarcelona 2
    Girona 2 Olot 2
    Olot 2 CEEuropa 2
    Olot 1 FCBarcelona 1
    Olot 2 Girona 3
    
    
    

    Output

    CEEuropa PUNTS: 9 GF: 17 GC: 12
    FCBarcelona PUNTS: 9 GF: 13 GC: 12
    Girona PUNTS: 8 GF: 15 GC: 14
    Olot PUNTS: 3 GF: 8 GC: 15
    
  • Input

    4
    Girona
    Olot
    CEEuropa
    FCBarcelona
    
    
    CEEuropa 2 FCBarcelona 1
    CEEuropa 2 Girona 1
    CEEuropa 2 Olot 1
    FCBarcelona 2 CEEuropa 1
    FCBarcelona 2 Girona 1
    FCBarcelona 2 Olot 1
    Girona 2 CEEuropa 1
    Girona 2 FCBarcelona 1
    Girona 2 Olot 1
    Olot 2 CEEuropa 1
    Olot 2 FCBarcelona 1
    Olot 2 Girona 1
    
    
    

    Output

    CEEuropa PUNTS: 9 GF: 9 GC: 9
    FCBarcelona PUNTS: 9 GF: 9 GC: 9
    Girona PUNTS: 9 GF: 9 GC: 9
    Olot PUNTS: 9 GF: 9 GC: 9
    
  • Input

    3
    CEEuropa
    FCBarcelona
    Olot
    
    CEEuropa 2 FCBarcelona 1
    CEEuropa 5 Olot 0
    FCBarcelona 4 CEEuropa 3
    Olot 2 CEEuropa 2
    
    
    
    

    Output

    CEEuropa PUNTS: 7 GF: 12 GC: 7
    FCBarcelona PUNTS: 3 GF: 5 GC: 5
    Olot PUNTS: 1 GF: 2 GC: 7
    
  • Information
    Author
    PRO1
    Language
    Catalan
    Other languages
    English Spanish
    Official solutions
    C++
    User solutions
    C++