Problema solo su due test

M
Mic_s (670 points)
2 16 22
asked Nov 30, 2020 in HW6 obbligatorio by Mic_s (670 points)
Passo tutti i test senza alcun timeout tranne random 15 e 40 perchè l'altezza è sbagliata di uno. Mi sembra strano che siano solo quei due ad essere sbagliati visto che la formula per l'altezza è uguale in tutti i casi. Qualcuno ha qualche consiglio? Per trovare l'latezza sottraggo la y dell'ultimo primo pixel dell'ultimo rettangolo con il primo del primo e aggiungo 1.
138 views

4 Answers

twgever (15190 points)
7 27 105
answered Nov 30, 2020 by twgever (15,190 points)
altezza di cosa? di un rettangolo o di tutti i rettangoli?
g
giacomo_venturini (6680 points)
2 5 39
answered Nov 30, 2020 by giacomo_venturini (6,680 points)
Probabilmente calcoli male la posizione dell'ultimo pixel se c'è un rettangolo che copre parte di quel lato o se ce n'è uno subito sotto?
f
fabio.chiarini (2280 points)
0 0 7
answered Nov 30, 2020 by fabio.chiarini (2,280 points)
Se il modo che usi per calcolare l'altezza è corretto (differenza tra y di un vertice y dell'altro vertice + 1) molto probabilmente è il modo in cui ti calcoli quei vertici ad essere errato. Io inizialmente avevo il problema che, quando un vertice si toccava con un lato di un altro rettangolo, salvavo il vertice con coordinate sbagliate di 1 pixel (sulla riga e/o sulla colonna) e ciò mi causava proprio errori simili a quelli che hai riportato tu.
andrea_25 (6070 points)
2 2 24
answered Nov 30, 2020 by andrea_25 (6,070 points)
Visto che sai quali sono i test che non passi, analizzali per capire cosa hanno di diverso rispetto agli altri test in modo tale da trovare velocemente l'inghippo nel tuo codice.

Random 40 potrebbe crearti delle difficoltà perché ha molti lati di rettangoli adiacenti, e questo può sicuramente essere un problema da tenere in considerazione, quindi ragionaci un po' sù.