Hacker Timesnew | past | comments | ask | show | jobs | submitlogin

nice! i did similar, but used character frequencies in the remaining word sets to rank: https://github.com/keredson/wordle_solver


I tried yours out, nice work yourself! Seems we took a similar approach in recalculating the letter distributions based on remaining words - both our algos solved it in 4 turns today.

If I may make two small suggestions as a user, I noticed you have a dictionary with nearly 13k words which often results in invalid suggestions like 'clery' and 'meryl'. In testing I found the Scrabble dictionary to be much more likely to yield valid Wordle words (found here: https://github.com/redbo/scrabble), though the official Wordle answers tend to be an even smaller set of ~2,500 common words.

Second, though the implementation is very clean in code (much more concise than mine!), I found the use of the green/gray/yellow methods to be a bit cumbersome when adding constraints. You could wrap these three in a method like guess(word, reply) where your response encodes the feedback as something like [g]=green, [b]=black, [y]=yellow:

Given: [('arose', 27122), ('aeros', 27122), ('seria', 27095), ('riesa', 27095)]

>>> w.guess('arose', 'bybby')

vs.

>>> w.gray('aos') >>> w.yellow('r', 2) >>> w.yellow('e', 5)

You could even have the guess method trigger a new round of suggestions since the response implies that we've advanced a turn.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: