Progressió en una cursa ciclista X69907


Statement
 

pdf   zip

html

Al final d’aquest enunciat hi podeu trobar un programa a mig fer que haureu de completar. Concretament, hi han dues funcions que estan pendents d’implementar. A continuació us expliquem amb quines dades treballa el programa i què han de fer aquestes funcions.

El programa treballa amb un tipus de dada Cyclist, que representa un ciclista que participa en una carrera, que inclou el nom del ciclista, la seva posició actual i la seva velocitat actual. Per simplificar, utilitzem variables enteres enlloc de reals.

struct Cyclist {
  string name;
  int position;
  int velocity;
};

El programa també treballa amb un tipus de dada ListCyclists, que representa una llista de ciclistes:

typedef vector<Cyclist> ListCyclists;

Haureu d’implementar una funció que rep una llista de ciclistes i un temps transcorregut, i ha d’actualitzar la posició de tots els ciclistes afegint-los-hi la seva velocitat multiplicada per aquest temps transcorregut. Si algú vol pensar en termes d’unitats específiques, us podeu imaginar que la posició és en metres, el temps en segons, i la velocitat en metres per segon.

void progressCyclists(int time, ListCyclists &listcyclists)

A més a més, haureu d’implementar una funció que rep dos ciclistes i retorna cert si el primer ciclista és menor que el segon d’acord al criteri que descrivim seguidament. Un ciclista és menor que un altre si està en una posició estrictament menor que l’altre, o està a la mateixa posició que l’altre i té estrictament menys velocitat, o està a la mateixa posició i té la mateixa velocitat que l’altre però el seu nom és menor que el nom de l’altre en ordre lexicogràfic.

bool smallerCyclist(Cyclist c1, Cyclist c2)

La funció anterior es fa servir des d’un altre lloc del programa per a ordenar tots els ciclistes.

Completeu el següent codi a mig per per tal de solucionar l’exercici:

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

// Here you can add more includes if you wish.
// ...

using namespace std;

struct Cyclist {
  string name;
  int position;
  int velocity;
};

typedef vector<Cyclist> ListCyclists;

// Auxiliary functions (you can add more functions if you wish)

// Pre:  
// Post: Prints all cyclists from first to last, one per line, and with the format:
//       name position velocity
void printCyclists(const ListCyclists &listcyclists)
{
  for (int i = 0; i < int(listcyclists.size()); i++) {
    const Cyclist &c = listcyclists[i];
    cout << c.name << " " << c.position << " " << c.velocity << endl;
  }
}

// Pre:  variable 'time' is strictly positive and represents a time elapsed.
// Post: All positions of cyclists in listcyclists have been updated
//       according to the given time elapsed and their corresponding velocity.
void progressCyclists(int time, ListCyclists &listcyclists)
{
  // Implement this function.
  //...
}

// Pre:  c1, c2 represent correct cyclists.
// Post: Returns true iff one of the following conditions holds:
//         - position of c1 is strictly smaller than position of c2.
//         - c1 and c2 have same position but velocity of c1 is strictly smaller than velocity of c2.
//         - c1 and c2 coincide in position and velocity, but c1 has smaller name than c2.
bool smallerCyclist(Cyclist c1, Cyclist c2)
{
  // Implement this function.
  //...
}

int main()
{
  int n;
  cin >> n;
  ListCyclists listcyclists(n);
  for (int i = 0; i < n; i++) {
    Cyclist &c = listcyclists[i];
    cin >> c.name;
    c.position = 0;
    c.velocity = 0;
  }
  string command;
  while (cin >> command) {
    if (command == "UPDATEVELOCITY") {
      int i, velocity;
      cin >> i >> velocity;
      listcyclists[i].velocity = velocity;
    } else if (command == "SORT") {
      sort(listcyclists.begin(), listcyclists.end(), smallerCyclist);
    } else if (command == "PRINT") {
      cout << "Current list cyclists:" << endl;
      printCyclists(listcyclists);
      cout << endl;
    } else if (command == "PROGRESSCYCLISTS") {
      int time;
      cin >> time;
      progressCyclists(time, listcyclists);
    }
  }
}

Entrada

La entrada consisteix en una llista de comandes per a actualitzar la velocitat d’un ciclista, ordenar-los, escriure’ls tots, i fer progressar tots els ciclistes. No us n’heu de preocupar massa perquè el main que us donem ja s’encarrega de llegir les comandes i cridar a les corresponents funcions.

Sortida

La sortida mostra els resultats de les comandes. No us n’heu de preocupar massa perquè el main que us donem ja s’encarrega de produïr aquesta sortida cridant a les corresponents funcions.

Public test cases
  • Input

    6
    indurain lejarreta amstrong delgado vingegaard hinault
    UPDATEVELOCITY 3 6
    PROGRESSCYCLISTS 6
    UPDATEVELOCITY 0 10
    PRINT
    UPDATEVELOCITY 1 1
    SORT
    PROGRESSCYCLISTS 7
    PROGRESSCYCLISTS 7
    UPDATEVELOCITY 4 2
    UPDATEVELOCITY 3 10
    UPDATEVELOCITY 2 3
    UPDATEVELOCITY 1 6
    PROGRESSCYCLISTS 3
    PRINT
    UPDATEVELOCITY 5 8
    PRINT
    UPDATEVELOCITY 1 3
    UPDATEVELOCITY 3 2
    UPDATEVELOCITY 2 8
    UPDATEVELOCITY 2 6
    UPDATEVELOCITY 5 7
    PRINT
    UPDATEVELOCITY 2 4
    UPDATEVELOCITY 2 7
    UPDATEVELOCITY 3 6
    UPDATEVELOCITY 3 7
    UPDATEVELOCITY 4 10
    UPDATEVELOCITY 5 5
    UPDATEVELOCITY 0 6
    PRINT
    UPDATEVELOCITY 2 5
    UPDATEVELOCITY 2 8
    PROGRESSCYCLISTS 7
    UPDATEVELOCITY 2 5
    UPDATEVELOCITY 5 5
    PRINT
    PROGRESSCYCLISTS 1
    UPDATEVELOCITY 0 10
    UPDATEVELOCITY 4 7
    UPDATEVELOCITY 5 6
    UPDATEVELOCITY 2 9
    UPDATEVELOCITY 3 8
    PRINT
    UPDATEVELOCITY 0 3
    PRINT
    SORT
    PRINT
    UPDATEVELOCITY 1 6
    PROGRESSCYCLISTS 5
    PROGRESSCYCLISTS 1
    UPDATEVELOCITY 3 8
    UPDATEVELOCITY 5 2
    UPDATEVELOCITY 3 8
    PRINT
    UPDATEVELOCITY 5 4
    PROGRESSCYCLISTS 6
    PRINT
    UPDATEVELOCITY 5 5
    UPDATEVELOCITY 3 3
    UPDATEVELOCITY 3 10
    PRINT
    UPDATEVELOCITY 5 1
    PRINT
    PROGRESSCYCLISTS 4
    UPDATEVELOCITY 1 7
    UPDATEVELOCITY 1 6
    UPDATEVELOCITY 4 5
    UPDATEVELOCITY 1 1
    PRINT
    UPDATEVELOCITY 4 5
    UPDATEVELOCITY 5 7
    UPDATEVELOCITY 3 8
    UPDATEVELOCITY 3 7
    PRINT
    UPDATEVELOCITY 5 9
    PROGRESSCYCLISTS 8
    UPDATEVELOCITY 1 9
    SORT
    UPDATEVELOCITY 1 6
    SORT
    UPDATEVELOCITY 2 4
    UPDATEVELOCITY 0 10
    PRINT
    UPDATEVELOCITY 1 4
    UPDATEVELOCITY 2 7
    UPDATEVELOCITY 4 9
    UPDATEVELOCITY 0 10
    UPDATEVELOCITY 5 7
    PRINT
    PROGRESSCYCLISTS 4
    UPDATEVELOCITY 5 3
    UPDATEVELOCITY 4 1
    UPDATEVELOCITY 5 5
    UPDATEVELOCITY 3 3
    PROGRESSCYCLISTS 5
    SORT
    PRINT
    UPDATEVELOCITY 4 9
    PROGRESSCYCLISTS 3
    UPDATEVELOCITY 5 4
    

    Output

    Current list cyclists:
    indurain 0 10
    lejarreta 0 0
    amstrong 0 0
    delgado 36 6
    vingegaard 0 0
    hinault 0 0
    
    Current list cyclists:
    amstrong 0 0
    hinault 18 6
    vingegaard 9 3
    lejarreta 44 10
    indurain 146 2
    delgado 138 6
    
    Current list cyclists:
    amstrong 0 0
    hinault 18 6
    vingegaard 9 3
    lejarreta 44 10
    indurain 146 2
    delgado 138 8
    
    Current list cyclists:
    amstrong 0 0
    hinault 18 3
    vingegaard 9 6
    lejarreta 44 2
    indurain 146 2
    delgado 138 7
    
    Current list cyclists:
    amstrong 0 6
    hinault 18 3
    vingegaard 9 7
    lejarreta 44 7
    indurain 146 10
    delgado 138 5
    
    Current list cyclists:
    amstrong 42 6
    hinault 39 3
    vingegaard 65 5
    lejarreta 93 7
    indurain 216 10
    delgado 173 5
    
    Current list cyclists:
    amstrong 48 10
    hinault 42 3
    vingegaard 70 9
    lejarreta 100 8
    indurain 226 7
    delgado 178 6
    
    Current list cyclists:
    amstrong 48 3
    hinault 42 3
    vingegaard 70 9
    lejarreta 100 8
    indurain 226 7
    delgado 178 6
    
    Current list cyclists:
    hinault 42 3
    amstrong 48 3
    vingegaard 70 9
    lejarreta 100 8
    delgado 178 6
    indurain 226 7
    
    Current list cyclists:
    hinault 60 3
    amstrong 84 6
    vingegaard 124 9
    lejarreta 148 8
    delgado 214 6
    indurain 268 2
    
    Current list cyclists:
    hinault 78 3
    amstrong 120 6
    vingegaard 178 9
    lejarreta 196 8
    delgado 250 6
    indurain 292 4
    
    Current list cyclists:
    hinault 78 3
    amstrong 120 6
    vingegaard 178 9
    lejarreta 196 10
    delgado 250 6
    indurain 292 5
    
    Current list cyclists:
    hinault 78 3
    amstrong 120 6
    vingegaard 178 9
    lejarreta 196 10
    delgado 250 6
    indurain 292 1
    
    Current list cyclists:
    hinault 90 3
    amstrong 144 1
    vingegaard 214 9
    lejarreta 236 10
    delgado 274 5
    indurain 296 1
    
    Current list cyclists:
    hinault 90 3
    amstrong 144 1
    vingegaard 214 9
    lejarreta 236 7
    delgado 274 5
    indurain 296 7
    
    Current list cyclists:
    hinault 114 10
    amstrong 152 6
    vingegaard 286 4
    lejarreta 292 7
    delgado 314 5
    indurain 368 9
    
    Current list cyclists:
    hinault 114 10
    amstrong 152 4
    vingegaard 286 7
    lejarreta 292 7
    delgado 314 9
    indurain 368 7
    
    Current list cyclists:
    amstrong 188 4
    hinault 204 10
    lejarreta 335 3
    vingegaard 349 7
    delgado 355 1
    indurain 421 5
    
    
  • Input

    18
    indurain lejarreta amstrong delgado vingegaard hinault merckx froome anquetil lemond bernal nibali wiggins evans contador sastre pantani ullrich
    UPDATEVELOCITY 15 0
    UPDATEVELOCITY 7 0
    UPDATEVELOCITY 9 2
    UPDATEVELOCITY 10 2
    UPDATEVELOCITY 15 2
    UPDATEVELOCITY 3 0
    UPDATEVELOCITY 2 0
    PRINT
    UPDATEVELOCITY 10 0
    UPDATEVELOCITY 13 2
    UPDATEVELOCITY 16 0
    UPDATEVELOCITY 11 1
    UPDATEVELOCITY 1 1
    UPDATEVELOCITY 8 0
    PROGRESSCYCLISTS 2
    UPDATEVELOCITY 2 1
    PROGRESSCYCLISTS 3
    UPDATEVELOCITY 15 2
    UPDATEVELOCITY 10 2
    SORT
    UPDATEVELOCITY 17 0
    PRINT
    UPDATEVELOCITY 15 0
    PROGRESSCYCLISTS 3
    PRINT
    UPDATEVELOCITY 2 2
    UPDATEVELOCITY 14 2
    UPDATEVELOCITY 7 0
    UPDATEVELOCITY 7 0
    UPDATEVELOCITY 17 1
    UPDATEVELOCITY 7 1
    UPDATEVELOCITY 6 2
    UPDATEVELOCITY 3 2
    UPDATEVELOCITY 0 0
    PROGRESSCYCLISTS 3
    UPDATEVELOCITY 4 1
    UPDATEVELOCITY 9 2
    PRINT
    UPDATEVELOCITY 0 2
    PRINT
    UPDATEVELOCITY 10 2
    UPDATEVELOCITY 9 1
    PROGRESSCYCLISTS 2
    PRINT
    SORT
    UPDATEVELOCITY 8 0
    UPDATEVELOCITY 2 2
    UPDATEVELOCITY 6 0
    UPDATEVELOCITY 7 1
    UPDATEVELOCITY 8 0
    UPDATEVELOCITY 3 1
    UPDATEVELOCITY 6 0
    UPDATEVELOCITY 16 1
    PRINT
    UPDATEVELOCITY 11 1
    PROGRESSCYCLISTS 2
    UPDATEVELOCITY 14 1
    UPDATEVELOCITY 14 2
    UPDATEVELOCITY 3 2
    UPDATEVELOCITY 8 1
    PRINT
    PROGRESSCYCLISTS 2
    UPDATEVELOCITY 17 0
    UPDATEVELOCITY 3 1
    SORT
    UPDATEVELOCITY 6 2
    PRINT
    UPDATEVELOCITY 5 2
    PRINT
    UPDATEVELOCITY 6 1
    PROGRESSCYCLISTS 3
    UPDATEVELOCITY 4 1
    UPDATEVELOCITY 4 2
    SORT
    UPDATEVELOCITY 13 0
    UPDATEVELOCITY 13 1
    UPDATEVELOCITY 16 1
    UPDATEVELOCITY 6 1
    UPDATEVELOCITY 0 0
    UPDATEVELOCITY 5 1
    UPDATEVELOCITY 12 1
    UPDATEVELOCITY 11 0
    UPDATEVELOCITY 14 0
    UPDATEVELOCITY 16 0
    UPDATEVELOCITY 2 2
    UPDATEVELOCITY 17 1
    UPDATEVELOCITY 12 2
    UPDATEVELOCITY 9 0
    UPDATEVELOCITY 12 0
    PROGRESSCYCLISTS 2
    UPDATEVELOCITY 17 2
    PRINT
    UPDATEVELOCITY 14 1
    UPDATEVELOCITY 9 0
    UPDATEVELOCITY 17 1
    PROGRESSCYCLISTS 3
    PRINT
    UPDATEVELOCITY 13 1
    UPDATEVELOCITY 15 2
    UPDATEVELOCITY 14 0
    UPDATEVELOCITY 8 1
    UPDATEVELOCITY 3 2
    PROGRESSCYCLISTS 3
    UPDATEVELOCITY 3 1
    UPDATEVELOCITY 1 1
    UPDATEVELOCITY 11 1
    UPDATEVELOCITY 1 1
    PRINT
    UPDATEVELOCITY 14 1
    UPDATEVELOCITY 11 0
    UPDATEVELOCITY 10 0
    UPDATEVELOCITY 3 2
    UPDATEVELOCITY 5 1
    UPDATEVELOCITY 17 1
    UPDATEVELOCITY 0 2
    UPDATEVELOCITY 1 1
    PROGRESSCYCLISTS 2
    UPDATEVELOCITY 14 1
    UPDATEVELOCITY 9 1
    UPDATEVELOCITY 0 2
    UPDATEVELOCITY 6 1
    UPDATEVELOCITY 6 1
    UPDATEVELOCITY 12 1
    PRINT
    UPDATEVELOCITY 1 0
    UPDATEVELOCITY 13 1
    UPDATEVELOCITY 10 0
    UPDATEVELOCITY 16 2
    UPDATEVELOCITY 10 0
    PRINT
    UPDATEVELOCITY 8 2
    UPDATEVELOCITY 13 1
    PROGRESSCYCLISTS 1
    SORT
    PRINT
    UPDATEVELOCITY 10 1
    UPDATEVELOCITY 14 0
    UPDATEVELOCITY 17 1
    PROGRESSCYCLISTS 1
    UPDATEVELOCITY 2 2
    PRINT
    UPDATEVELOCITY 1 0
    PRINT
    UPDATEVELOCITY 15 2
    PRINT
    PROGRESSCYCLISTS 3
    UPDATEVELOCITY 14 2
    PRINT
    UPDATEVELOCITY 9 0
    UPDATEVELOCITY 13 0
    UPDATEVELOCITY 4 0
    UPDATEVELOCITY 6 1
    UPDATEVELOCITY 6 1
    SORT
    UPDATEVELOCITY 0 1
    PRINT
    PROGRESSCYCLISTS 2
    PROGRESSCYCLISTS 1
    UPDATEVELOCITY 7 2
    UPDATEVELOCITY 3 2
    UPDATEVELOCITY 6 2
    UPDATEVELOCITY 3 0
    PROGRESSCYCLISTS 3
    UPDATEVELOCITY 13 1
    UPDATEVELOCITY 12 2
    UPDATEVELOCITY 14 2
    UPDATEVELOCITY 14 0
    UPDATEVELOCITY 3 2
    PRINT
    UPDATEVELOCITY 11 1
    UPDATEVELOCITY 12 0
    UPDATEVELOCITY 0 2
    PRINT
    UPDATEVELOCITY 14 0
    UPDATEVELOCITY 10 0
    UPDATEVELOCITY 4 0
    PROGRESSCYCLISTS 2
    UPDATEVELOCITY 7 0
    UPDATEVELOCITY 6 1
    UPDATEVELOCITY 10 2
    UPDATEVELOCITY 4 0
    UPDATEVELOCITY 16 1
    UPDATEVELOCITY 15 1
    UPDATEVELOCITY 16 2
    UPDATEVELOCITY 14 0
    UPDATEVELOCITY 12 0
    UPDATEVELOCITY 6 2
    UPDATEVELOCITY 10 1
    UPDATEVELOCITY 6 1
    UPDATEVELOCITY 8 1
    UPDATEVELOCITY 13 2
    UPDATEVELOCITY 0 1
    UPDATEVELOCITY 12 1
    UPDATEVELOCITY 15 1
    UPDATEVELOCITY 12 1
    PROGRESSCYCLISTS 1
    PROGRESSCYCLISTS 1
    PROGRESSCYCLISTS 3
    UPDATEVELOCITY 16 1
    UPDATEVELOCITY 17 2
    

    Output

    Current list cyclists:
    indurain 0 0
    lejarreta 0 0
    amstrong 0 0
    delgado 0 0
    vingegaard 0 0
    hinault 0 0
    merckx 0 0
    froome 0 0
    anquetil 0 0
    lemond 0 2
    bernal 0 2
    nibali 0 0
    wiggins 0 0
    evans 0 0
    contador 0 0
    sastre 0 2
    pantani 0 0
    ullrich 0 0
    
    Current list cyclists:
    anquetil 0 0
    contador 0 0
    delgado 0 0
    froome 0 0
    hinault 0 0
    indurain 0 0
    merckx 0 0
    pantani 0 0
    ullrich 0 0
    vingegaard 0 0
    wiggins 0 0
    bernal 0 2
    amstrong 3 1
    lejarreta 5 1
    nibali 5 1
    evans 10 2
    lemond 10 2
    sastre 10 0
    
    Current list cyclists:
    anquetil 0 0
    contador 0 0
    delgado 0 0
    froome 0 0
    hinault 0 0
    indurain 0 0
    merckx 0 0
    pantani 0 0
    ullrich 0 0
    vingegaard 0 0
    wiggins 0 0
    bernal 6 2
    amstrong 6 1
    lejarreta 8 1
    nibali 8 1
    evans 10 0
    lemond 16 2
    sastre 10 0
    
    Current list cyclists:
    anquetil 0 0
    contador 0 0
    delgado 6 2
    froome 6 2
    hinault 0 1
    indurain 0 0
    merckx 6 2
    pantani 3 1
    ullrich 0 0
    vingegaard 0 2
    wiggins 0 0
    bernal 12 2
    amstrong 9 1
    lejarreta 11 1
    nibali 14 2
    evans 10 0
    lemond 22 2
    sastre 13 1
    
    Current list cyclists:
    anquetil 0 2
    contador 0 0
    delgado 6 2
    froome 6 2
    hinault 0 1
    indurain 0 0
    merckx 6 2
    pantani 3 1
    ullrich 0 0
    vingegaard 0 2
    wiggins 0 0
    bernal 12 2
    amstrong 9 1
    lejarreta 11 1
    nibali 14 2
    evans 10 0
    lemond 22 2
    sastre 13 1
    
    Current list cyclists:
    anquetil 4 2
    contador 0 0
    delgado 10 2
    froome 10 2
    hinault 2 1
    indurain 0 0
    merckx 10 2
    pantani 5 1
    ullrich 0 0
    vingegaard 2 1
    wiggins 4 2
    bernal 16 2
    amstrong 11 1
    lejarreta 13 1
    nibali 18 2
    evans 10 0
    lemond 26 2
    sastre 15 1
    
    Current list cyclists:
    contador 0 0
    indurain 0 0
    ullrich 0 2
    hinault 2 1
    vingegaard 2 1
    anquetil 4 2
    wiggins 4 0
    pantani 5 1
    evans 10 0
    delgado 10 2
    froome 10 2
    merckx 10 2
    amstrong 11 1
    lejarreta 13 1
    sastre 15 1
    bernal 16 2
    nibali 18 1
    lemond 26 2
    
    Current list cyclists:
    contador 0 0
    indurain 0 0
    ullrich 4 2
    hinault 4 2
    vingegaard 4 1
    anquetil 8 2
    wiggins 4 0
    pantani 7 1
    evans 10 1
    delgado 14 2
    froome 14 2
    merckx 12 1
    amstrong 13 1
    lejarreta 15 1
    sastre 17 2
    bernal 20 2
    nibali 20 1
    lemond 30 2
    
    Current list cyclists:
    contador 0 0
    indurain 0 0
    wiggins 4 0
    vingegaard 6 1
    hinault 8 1
    ullrich 8 2
    pantani 9 2
    evans 12 1
    anquetil 12 2
    merckx 14 1
    amstrong 15 1
    lejarreta 17 1
    delgado 18 2
    froome 18 2
    sastre 21 2
    nibali 22 1
    bernal 24 2
    lemond 34 0
    
    Current list cyclists:
    contador 0 0
    indurain 0 0
    wiggins 4 0
    vingegaard 6 1
    hinault 8 1
    ullrich 8 2
    pantani 9 2
    evans 12 1
    anquetil 12 2
    merckx 14 1
    amstrong 15 1
    lejarreta 17 1
    delgado 18 2
    froome 18 2
    sastre 21 2
    nibali 22 1
    bernal 24 2
    lemond 34 0
    
    Current list cyclists:
    contador 0 0
    indurain 0 0
    wiggins 8 2
    vingegaard 11 1
    hinault 15 2
    pantani 14 1
    ullrich 16 1
    evans 17 1
    merckx 19 1
    amstrong 18 0
    anquetil 22 2
    lejarreta 20 0
    delgado 24 0
    froome 26 1
    nibali 25 0
    sastre 31 2
    bernal 30 0
    lemond 36 2
    
    Current list cyclists:
    contador 0 0
    indurain 0 0
    wiggins 14 2
    vingegaard 14 1
    hinault 21 2
    pantani 17 1
    ullrich 19 1
    evans 20 1
    merckx 22 1
    amstrong 18 0
    anquetil 28 2
    lejarreta 20 0
    delgado 24 0
    froome 29 1
    nibali 28 1
    sastre 37 2
    bernal 30 0
    lemond 39 1
    
    Current list cyclists:
    contador 0 0
    indurain 0 1
    wiggins 20 2
    vingegaard 20 1
    hinault 27 2
    pantani 20 1
    ullrich 22 1
    evans 23 1
    merckx 25 1
    amstrong 18 0
    anquetil 34 2
    lejarreta 20 1
    delgado 24 0
    froome 32 1
    nibali 28 0
    sastre 43 2
    bernal 30 0
    lemond 42 1
    
    Current list cyclists:
    contador 4 2
    indurain 2 1
    wiggins 24 2
    vingegaard 24 2
    hinault 31 2
    pantani 22 1
    ullrich 24 1
    evans 25 1
    merckx 27 1
    amstrong 18 1
    anquetil 34 0
    lejarreta 20 0
    delgado 24 1
    froome 34 1
    nibali 30 1
    sastre 47 2
    bernal 30 0
    lemond 44 1
    
    Current list cyclists:
    contador 4 2
    indurain 2 0
    wiggins 24 2
    vingegaard 24 2
    hinault 31 2
    pantani 22 1
    ullrich 24 1
    evans 25 1
    merckx 27 1
    amstrong 18 1
    anquetil 34 0
    lejarreta 20 0
    delgado 24 1
    froome 34 1
    nibali 30 1
    sastre 47 2
    bernal 30 2
    lemond 44 1
    
    Current list cyclists:
    indurain 2 0
    contador 6 2
    amstrong 19 1
    lejarreta 20 0
    pantani 23 1
    delgado 25 1
    ullrich 25 1
    evans 26 1
    vingegaard 26 2
    wiggins 26 2
    merckx 29 2
    nibali 31 1
    bernal 32 2
    hinault 33 2
    anquetil 34 0
    froome 35 1
    lemond 45 1
    sastre 49 2
    
    Current list cyclists:
    indurain 2 0
    contador 8 2
    amstrong 20 2
    lejarreta 20 0
    pantani 24 1
    delgado 26 1
    ullrich 26 1
    evans 27 1
    vingegaard 28 2
    wiggins 28 2
    merckx 30 1
    nibali 32 1
    bernal 34 2
    hinault 35 2
    anquetil 34 0
    froome 36 1
    lemond 46 1
    sastre 50 1
    
    Current list cyclists:
    indurain 2 0
    contador 8 0
    amstrong 20 2
    lejarreta 20 0
    pantani 24 1
    delgado 26 1
    ullrich 26 1
    evans 27 1
    vingegaard 28 2
    wiggins 28 2
    merckx 30 1
    nibali 32 1
    bernal 34 2
    hinault 35 2
    anquetil 34 0
    froome 36 1
    lemond 46 1
    sastre 50 1
    
    Current list cyclists:
    indurain 2 0
    contador 8 0
    amstrong 20 2
    lejarreta 20 0
    pantani 24 1
    delgado 26 1
    ullrich 26 1
    evans 27 1
    vingegaard 28 2
    wiggins 28 2
    merckx 30 1
    nibali 32 1
    bernal 34 2
    hinault 35 2
    anquetil 34 0
    froome 36 2
    lemond 46 1
    sastre 50 1
    
    Current list cyclists:
    indurain 2 0
    contador 8 0
    amstrong 26 2
    lejarreta 20 0
    pantani 27 1
    delgado 29 1
    ullrich 29 1
    evans 30 1
    vingegaard 34 2
    wiggins 34 2
    merckx 33 1
    nibali 35 1
    bernal 40 2
    hinault 41 2
    anquetil 34 2
    froome 42 2
    lemond 49 1
    sastre 53 1
    
    Current list cyclists:
    indurain 2 1
    contador 8 0
    lejarreta 20 0
    amstrong 26 2
    pantani 27 0
    delgado 29 1
    ullrich 29 1
    evans 30 1
    merckx 33 1
    wiggins 34 0
    anquetil 34 2
    vingegaard 34 2
    nibali 35 1
    bernal 40 2
    hinault 41 0
    froome 42 2
    lemond 49 1
    sastre 53 1
    
    Current list cyclists:
    indurain 8 1
    contador 8 0
    lejarreta 20 0
    amstrong 32 2
    pantani 27 0
    delgado 35 1
    ullrich 38 2
    evans 39 2
    merckx 39 1
    wiggins 34 0
    anquetil 46 2
    vingegaard 46 2
    nibali 41 2
    bernal 52 1
    hinault 41 0
    froome 54 2
    lemond 55 1
    sastre 59 1
    
    Current list cyclists:
    indurain 8 2
    contador 8 0
    lejarreta 20 0
    amstrong 32 2
    pantani 27 0
    delgado 35 1
    ullrich 38 2
    evans 39 2
    merckx 39 1
    wiggins 34 0
    anquetil 46 2
    vingegaard 46 1
    nibali 41 0
    bernal 52 1
    hinault 41 0
    froome 54 2
    lemond 55 1
    sastre 59 1
    
    
  • Information
    Author
    PRO1
    Language
    Catalan
    Other languages
    English Spanish
    Official solutions
    C++
    User solutions
    C++