I often go through this dilemma during practicing.
Implementing problems and getting them accepted gives me a feeling of "actually solving" the problem.
However, the number of concepts and ideas I'm getting exposed to is much lesser this way as I am spending a lot of time implementing solutions.
What do you suggest? Which method has helped you improve?