12 lines
427 B
Plaintext
12 lines
427 B
Plaintext
import Prelude;
|
|
|
|
list[str] OrderedRep(str word){
|
|
return sort([word[i] | i <- [0..size(word)-1]]);
|
|
}
|
|
public list[set[str]] anagram(){
|
|
allwords = readFileLines(|http://wiki.puzzlers.org/pub/wordlists/unixdict.txt|);
|
|
AnagramMap = invert((word : OrderedRep(word) | word <- allwords));
|
|
longest = max([size(group) | group <- range(AnagramMap)]);
|
|
return [AnagramMap[rep]| rep <- AnagramMap, size(AnagramMap[rep]) == longest];
|
|
}
|