Accept an answer when it is obvious that it is the first fully correct answer
If an answer is (from your point of view) obviously fully correct, you should accept the first such answer (showing that this is the answer that solved your problem). There's no reason to wait, as there's no potential for the accept to change (and people who are looking for unsolved puzzles to solve will want to be able to skip over it upon seeing the green background).
If an answer is "correct" but there's potentially scope for a better or more complete answer (e.g. via adding an explanation that covers all the cases), it may be a good idea to hold off on the accept for a while in case the better answer is posted. (This is the case whether you know there's potential for a better answer, or whether you merely suspect that one might be possible.) It's probably a good idea to accept eventually, though, if no better answer comes along.
If all the answers are wrong and/or incomplete, then obviously, you don't accept any of them.
Note that it's fairly common for an answer to be posted to a puzzle when its author isn't online, and nobody else can accept answers. So, in practice, you often see substantial delays on an answer accept simply because the puzzle author isn't around.