Ciao Gianluca!
Concordo fermamente con Edoardo e ti consiglio di ragionare ancora una volta sull'algoritmo, nel suo complesso!
Per aiutarti fai finta di non aver scritto il codice che hai e pensa ad una soluzione, una nuova soluzione.
Questo perché, ricorda, non esiste un'unica soluzione al problema! Ne esistono molteplici! E le differenze che facciamo tra le varie soluzioni sono relativa all'efficienza e alla complessità di ognuna.
Quindi secondo me non devi basarti sul numero di righe di codice scritte da altri, poiché deriva tutto da un ragionamento (che in alcuni casi può essere il medesimo, ma nella maggior parte dei casi è differente).
Prenditi del tempo e prova a ragionarci ancora un po' su e fai particolare attenzione alle strutture adoperate, a tutti i cicli utilizzati (ricorda che usando un'immagine risulta difficoltoso vedere ogni volta che hai un ciclo pixel per pixel dell'immagine stessa, prendi l'ultimo test: hai un'immagine 1001x1001, se ripeti tante volte un ciclo che scorre singolarmente pixel per pixel vedi da te che diventa un lavoro enorme!)
Sperando di averti dato qualche dritta,
- Francesco Pio Scognamiglio