View Single Post
Old 16-09-2014, 00:59   #2
gianmpu
Senior Member
 
Iscritto dal: Oct 2010
Messaggi: 1609
L'approccio che hai usato per la soluzione non mi convince.
Il modo più semplice di risolvere il quesito secondo me è:
1) Usare un array in cui l'indice del singolo elemento è in pratica il numero del maratoneta (tieni conto però che gli array in C partono da 0 mentre i numeri dei corridori partono da 1)
2) Una funzione mette in ogni elemento dell'array il tempo che quel maratoneta ha impiegato
3) Quando un corridore viene squalificato puoi rappresentare questa condizione mettendo nell'array un valore del tempo "codificato" (ad esempio un valore pari a 0 oppure -1)
4) Per trovare i vincitori, basta scorrere più volte l'array cercando ogni volta l'elemento che ha il tempo di percorrenza più basso, ma che è comunque maggiore del valore che rappresenta la squalifica
__________________
Trattative nel mercatino: IronHead - fybpeppe - xcavax
Utenti assolutamente DA EVITARE: devilred
"Chi c**a sott' 'a neve, pure si ffa 'a bbuca e poi 'a copre, quanno 'a neve se scioje, 'a mm***a vie' sempre fori" T. Milian
gianmpu è offline   Rispondi citando il messaggio o parte di esso