En las retransmisiones de carreras de motociclismo o de automovilismo, es habitual que, junto con la posición de cada piloto, se indique cuánto ha avanzado, o retrocedido, respecto a su posición en la parrilla de salida. Por ejemplo, en el Gran Premio de Montecarlo de Fórmula 1 de 1987, el primero de los seis que ganó Ayrton Senna, la clasificación final fue:
Pos | Piloto | Salida |
---|---|---|
1 | Ayrton Senna | ⇑ 1 |
2 | Nelson Piquet | ⇑ 1 |
3 | Michele Alboreto | ⇑ 2 |
4 | Gerhard Berger | ⇑ 4 |
5 | Jonathan Palmer | ⇑ 10 |
6 | Ivan Capelli | ⇑ 13 |
7 | Martin Brundle | ⇑ 7 |
8 | Teo Fabi | ⇑ 4 |
9 | Alain Prost | ⇓− 5 |
10 | Satoru Nakajima | ⇑ 7 |
11 | René Arnoux | ⇑ 11 |
12 | Piercarlo Ghinzani | ⇑ 8 |
13 | Pascal Fabre | ⇑ 11 |
Hubo además 11 abandonos, un piloto (el español Adrián Campos) que no llegó a salir, y un alemán que fue excluído.
A partir de la clasificación, ¿eres capaz de reconstruir la parrilla de salida?
La entrada estará compuesta de múltiples casos de prueba. Cada uno comienza con un número n, indicando el número de pilotos que terminaron la carrera. A continuación vendrán n líneas, con los corredores por orden de llegada. Cada una tendrá un primer número indicando los puestos mejorados (positivos), o empeorados (negativos), respecto a la posición de salida (un 0 indica que la posición no cambió). Después vendrá un único espacio, y el nombre del piloto, que nunca superará las 80 letras, aunque podría contener espacios.
La entrada termina con una carrera sin pilotos.
Para cada caso de prueba el programa escribirá la parrilla de salida que pueda ser reconstruída con los datos disponibles. Se mostrarán los corredores que terminaron la carrera, uno por línea, ordenados de mejor puesto de salida a peor. Para cada uno, se indicará primero la posición en la salida, seguida de su nombre. Las posiciones de salida de pilotos que hayan abandonado no generarán salida. Todas las carreras tenían 26 pilotos en su inicio.
Si los datos del caso de prueba son incoherentes y no se puede reconstruir la parrilla de salida, se escribirá "IMPOSIBLE" (sin las comillas).
Tras cada caso de prueba se escribirá una línea con cinco guiones ("-----").
13 1 Ayrton Senna 1 Nelson Piquet 2 Michele Alboreto 4 Gerhard Berger 10 Jonathan Palmer 13 Ivan Capelli 7 Martin Brundle 4 Teo Fabi -5 Alain Prost 7 Satoru Nakajima 11 Rene Arnoux 8 Piercarlo Ghinzani 11 Pascal Fabre 1 100 Pierre Nodoyuna 0
2 Ayrton Senna 3 Nelson Piquet 4 Alain Prost 5 Michele Alboreto 8 Gerhard Berger 12 Teo Fabi 14 Martin Brundle 15 Jonathan Palmer 17 Satoru Nakajima 19 Ivan Capelli 20 Piercarlo Ghinzani 22 Rene Arnoux 24 Pascal Fabre ----- IMPOSIBLE -----