I'm new to competitive programming, and looking for every opportunity to learn and practice. So far I found two websites featuring consistently high-quality problemsets and editorials: Codeforces and TopCoder. All the problems I found on these two sites were interesting and well-tested, though editorials on TopCoder were sometimes hard to find or missing altogether.
I checked the 3 other large websites: HackerRank, CodeChef, HackerEarth. Unfortunately their quality was much less consistent. Several problemsets suffered from vague statements, and their test suites were often too small to catch my mistakes. Moreover, many problems could be solved by coding up ad-hoc solutions or standard algorithms, which is more of a coding exercise than what I'm looking for: puzzles requiring creative problem-solving skills, like those I found here and in TopCoder.
I've been looking for ways to identify good problemsets. One method I found is checking their setters and testers. Some contests on the above sites are set and tested by orange/red Codeforces members, and these seem to be of very high quality. For instance, this October contest on HackerEarth set by Errichto and tested by akulsareen which was very interesting, well-tested, and followed by excellent editorials.
So now I sometimes search for blogs posts on Codeforces featuring the tags for the other 3 big sites. If I find a contest set and tested by orange or red members, then I use it for practice. On the other hand, if I come across contests on these websites for which the setter and tester are not known to be high-rated competitive programmers, then I just skip it. Indeed all the really low-quality contests I encountered belonged to this last category.
What are your thoughts? Do you have other recommended methods to find high-quality problemsets?
I think LightOJ is also a good place to start. There's a forum there where people give you hints or critical test cases when you get stuck. Also there's UVa where you can find good problems using Uhunt.