As part of solving the "Fastest Gun In The West" problem I think there should be a time delay before a user can accept an answer.
As someone asking a question, I'll usually wait a bit just to ensure that others have a chance to answer. However, there've been several times when I've come to a question asked in the prior 30 minutes with an accepted answer... where the accepted answer really isn't really the best answer or a complete answer, or is a total tangent answer.
E.g. (fictitious question)
Q: How do I set the value of a hidden form element in
JavaScript/.Net MVC to the value of a another select element?
A: Use jQuery.
Don't get me wrong, I think jQuery is great. However, I think the community would be better served with the "more" correct/complete answers.
For the record, I am aware that there is an enforced delay (48h?) in accepting your own answer, to your own question (and I applaud this fully).