Anagrams: Difference between revisions

Line 199:
void main() {
string[][string] anags;
foreach (string w; new BufferedFile("unixdict.txt"))
anags[w.dup.sort] ~= w.dup;
int lmax;
foreach (astring w; anagsnew BufferedFile("unixdict.txt")) {
lmaxstring wrd = lmax < aw.length ? a.length : lmaxdup;
string key = wrd.sort;
foreach (a; anags)
ifanags[key] (a.length =~= lmax)wrd;
int len = anags[key].length;
lmax = lmax < len ? len : lmax;
}
foreach (a; anags) {
if (a.length == lmax) {
writefln(a);
}
}
}
</lang>
Anonymous user