Collo di bottiglia, ottimizzazione codice

Ciao a tutti,
sto cercando di risolvere collo di bottiglia
la mia idea è quella di effettuare un semplice dijkstra considerando come distanza il valore fisso 1 e facendo una modifica: l’aggiunta di un array relativo alla velocità minima

codice
https://pastebin.com/8pqB1kvb

Purtroppo a volte mi va in timeout, a volte risultato non corretto e negli ultimi due casi out of memory
Peggio di cosi haha

Sapete aiutarmi? grazie

scusate ma sono troppo frettoloso a postare le domande
risolto: https://pastebin.com/s9LH4x8p

la causa era un piccolo bug