Ordkedjor


Denna uppgift behandlar ordkedjor av typen:

    bevis
      vispa
	spalt
	  alträ
	    träck
	      äckla
		klamp
		  amper
		    peruk

Orden i denna kedja är hämtade ur filen ord5 på kurskatalogen (se allmänna anvisningar). Varje ord i kedjan börjar på samma tre bokstäver som det föregående ordet slutar på.

Din uppgift är att skriva ett program som läser in startordet i en sådan kedja och skriver ut den längsta kedja som går att bilda utgående från detta ord. Ovanstående kedja är t.ex. den längsta som går att bilda utgående från bevis. Samma ord får naturligtvis inte ingå flera gånger i kedjan.

Tänk på att ordlängd (i detta fall 5) och överlappning (i detta fall 3) ska vara enkla att ändra. Det ska också vara lätt att anpassa programmet till att klara variabel ordlängd.

Tips: Implementera en ordlista som tillåter att du kan finna alla ord som börjar med ett visst prefix. Eftersom antalet ord är ganska stort måste denna vara effektivt implementerad (logaritmisk tid för uppslagning eller bättre).