ATP X71302


Statement
 

pdf   zip   main.cc

html

Supon la declaración de la tupla Player:

   struct Player {
      string first, last; // nombre, appellido
      int points;         // puntos
   };

que almacena la información de un jugador de la ATP.

Haz una función ordena con la cabecera:

   void ordena(list<Player>& P, bool by_points);

que permite ordenar los jugadores por puntos (cuando by_points es cierto) o por apellido (cuando by_points es falso).

Entrada

La acción recibe una lista de jugadores, posiblemente vacía.

Salida

La acción devuelve la lista ordenada por puntos, si by_points es true, y ordenada por apellido, si by_points es false.

Observación

La solución a este problema puede tener más de una función.

El programa principal que utiliza el jutge es el siguiente:

   Player p;
   list<Player> L;
   while (cin >> p.first >> p.last >> p.points) {
      L.push_back(p);
   }
   ordena(L, true);
   mostra(L);
   ordena(L, false);
   mostra(L);
Public test cases
  • Input

    Roger Federer 8710	
    Rafael Nadal 10415	
    Novak Djokovic	13310	
    David Ferrer 4665
    Nicolas Almagro 2070
    Andy Murray 7450	
    

    Output

    Novak Djokovic 13310
    Rafael Nadal 10415
    Roger Federer 8710
    Andy Murray 7450
    David Ferrer 4665
    Nicolas Almagro 2070
    
    Nicolas Almagro 2070
    Novak Djokovic 13310
    Roger Federer 8710
    David Ferrer 4665
    Andy Murray 7450
    Rafael Nadal 10415
    
    
  • Input

    X C 2000
    X B 1000
    X A 500

    Output

    X C 2000
    X B 1000
    X A 500
    
    X A 500
    X B 1000
    X C 2000
    
    
  • Information
    Author
    Pau Fernández
    Language
    Spanish
    Translator
    Pau Fernández
    Original language
    Catalan
    Other languages
    Catalan
    Official solutions
    Unknown.
    User solutions
    C++