Do you need any help?

Consigli sulla ricorsione

kevincukaj (660 points)
1 5 10
asked Dec 13, 2020 in HW8 obbligatorio by kevincukaj (660 points)
recategorized Dec 13, 2020 by kevincukaj
Fin ora sono riuscito a passare soltanto metà dei test.

La funzione ricorsiva che ho implementato, partendo dalla città iniziale, va fino in fondo all'albero cercando il segreto di ogni città. Il problema ho riscontrato è che quando la funzione risale l'albero ritornado il segreto per ciascuna città, tronca la stringa appena trova uno sdoppiamento del percorso (più percorsi a partire da quella città).

 La logica che uso e che non funziona è:  per ogni città che si raggiunge con un indizio, trovo tutte le altre città raggiungibili a partire da quella città e implemento un ciclo for sulla funzione ricorsiva.

Voglio precisare che non faccio uso di dizionari.
349 views

3 Answers

O
Oakandrew (6400 points)
4 26 63
answered Dec 13, 2020 by Oakandrew (6,400 points)
Salve,

cmq dovresti associare in qualche maniera un percorso ai percorsi successivi(multipli), a questo ti potrebbe servire il dizionario
kevincukaj (660 points)
1 5 10
commented Dec 13, 2020 by kevincukaj (660 points)
vedo se riesco a fare qualcosa. grazie
O
Oakandrew (6400 points)
4 26 63
commented Dec 13, 2020 by Oakandrew (6,400 points)
f
fabio.chiarini (2280 points)
0 0 7
answered Dec 13, 2020 by fabio.chiarini (2,280 points)
Ciao, non per forza devi "risalire" l'albero (anch'io inizialmente ho fatto così, ma non riuscivo più a venirne a capo). Impostando la funzione ricorsiva in modo un po' diverso rispetto a quello che mi sembra tu abbia fatto, puoi costruirti il segreto man mano che scorri i vari nodi e, una volta arrivato ad una città finale (ovvero ad una foglia) "salvarti" il segreto completo per quel percorso. La ricorsione poi ripartirà dal nodo in cui si era interrotta precedentemente fino a raggiungere un'altra foglia ecc...
kevincukaj (660 points)
1 5 10
commented Dec 13, 2020 by kevincukaj (660 points)
grazie del consiglio. Domani proverò a cambiare qualcosa
CiZ (3810 points)
4 12 20
answered Dec 15, 2020 by CiZ (3,810 points)
Posso chiederti se hai risolto il tuo problema? Se sì, avresti qualche consiglio?