[C++] Canoa

Una gara di canoe sta per iniziare. Sfortunatamente dei forti venti hanno danneggiato alcune canoe e
la gara sta per iniziare!
Per fortuna alcune squadre hanno portato una canoa di riserva. Siccome le canoe sono pesanti e
difficili da trasportare, le squadre sono disposte a prestare la loro canoa di riserva (se ce l’hanno) a
una squadra avversaria se e solo se sono disposti immediatamenti vicini a loro (alla partenza, cioè
se hanno numeri di partenza immediatamente vicini). Per esempio, la squadra con il numero di
partenza 4, sarà disposta a prestare la sua canoa di riserva solo alle squadre con numero di partenza
3 e 5. Ovviamente se una squadra che ha portato la canoa di riserva ha la sua canoa danneggiata,
utilizzerà la canoa di riserva per sè.
Tu, come organizzatore della gara, vuoi sapere qual è il minimo numero di squadre che non possono
iniziare la gara, neanche con canoe imprestate.

INPUT (input.txt)
La prima riga dell’input contiene tre interi: N, (2 <= N <= 10), il numero totale di squadre, S (2 <=
S <= N), il numero delle squadre con canoe danneggiate e R ( 2 <= R <= N), il numero di squadre
con canoe di riserva.
La seconda riga dell’input contiene esattamente S numeri, i numeri delle posizioni alla partenza
delle squadre con canoe danneggiate. Questa riga non contiene duplicati.
La terza riga dell’input contiene esattamente R numeri, i numeri delle posizioni alla partenza delle
squadre con canoe di riserva. Questa riga non contiene duplicati.

OUTPUT (output.txt)
L’output contiene un singolo numero, il numero minimo di squadre che non possono iniziare la
gara.

SOLUZIONE:
Procediamo con ordine: se una squadra ha una canoa:
* gli serve? se la tiene
* serve a sinistra? la da alla squadra di sisnistra
*la da alla squadra di destra

Related Posts Plugin for WordPress, Blogger...