Edit Step Ladders
Time Limit: 5 Seconds Memory Limit: 32768 KB
An edit step is a transformation from one word x to another word y such that
x and y are words in the dictionary, and x can be transformed to y by adding,
deleting, or changing one letter. So the transformation from dig to dog or from
dog to do are both edit steps. An edit step ladder is a lexicographically ordered
sequence of words w1, w2, ... wn such that the transformation from wi to wi+1
is an edit step for all i from 1 to n-1.
For a given dictionary, you are to compute the length of the longest edit step
ladder.
Input
The input to your program consists of the dictionary - a set of lower case words in lexicographic order - one per line (the character "-" or "'" may also appear). No word exceeds 16 letters and there are no more than 25000 words in the dictionary.
Output
The output consists of a single integer, the number of words in the longest edit step ladder.
Sample Input
cat dig dog fig fin fine fog log wine
Sample Output
5Submit
Source: University of Waterloo Local Contest 2000.09.23