Sono date una immagine (in formato PAM) ed una lista di rettangoli (4 interi). Si invertano i colori dei pixel interni ad un numero dispari di rettangoli.

La lista di rettangoli è data in un file il cui primo valore è il numero di rettangoli, seguito da tante righe quanti sono i rettangoli. Ognuna di queste righe contiene le coordinate di due estremi del rettangolo, separate da punti. Le coordinate sono date in ordine crescente (angolo in alto a sinistra, angolo in basso a destra).

Il programma deve supportare immagini a 3 o 4 canali, e l'inversione dei colori segue la formula nuovo_valore <- MAX - vecchio_valore per i primi tre canali, dove MAX è il massimo valore del singolo canale.

BONUS: supportare anche immagini a 1 o 2 canali, invertendo solo il valore del primo canale.

File ausiliari forniti:

che carica la lista di rettangoli dal file fname, ponendoli nell'array lineare rects e restituendo il numero di rettangoli caricati, o un numero negativo in caso d'errore.