I am a newbie and I come across a wide variety of sites in which there are a large number of questions (spoj , topcoder, eulers, code chef).
But i want to know which provides the optimal environment to improve my skills to the best. I am really confused, and need some guidance on open source projects.