Посоветую сайты по спортивному программированию:
Там и онлайн проверка решения и оптимизация исходного кода, и поиск ошибок. В общем всё то, с чем постоянно сталкивается программист. Если не знаешь как решить, то можно поразбираться в коде тех, кто решил.