Great solution. Thanks a lot :)
One question. Why is the program freezing?
The program gets stuck at 30 output if I want to let's say 70-99 instead of just 10.
What letters are you using? I changed the program to just use five letters only from ACGT (you mentioned biology) and it
can't find 100 (it times out). There may not be that many strings that are that mutually different.