Yeah, this was *much* easier than I expected. My candidate was in second place according to /usr/share/dict/words which has ixodid but not dioxid; I'm really not confident that dioxid is a word.
I recall that I had also found the third place word now that I look at it. What I had to do was print out all combinations of letters that could make between 999,000 and 1,001,000 and then eyeball them. The factorization was a trick because I had only 16 bit ints if I recall right; I think hacked it in floats. I am amazed at how fast the Python ran and how easy it was to solve. I found "ixodid" in two reasonable lines of Python or one over-long ugly one, (in addition to what I already posted). It runs in about 15 seconds on a G4 powerbook. All in memory! I once spent three whole days on this. Hundreds of lines of Fortran, pages and pages of fanfold paper. Argh. mt -- http://mail.python.org/mailman/listinfo/python-list