One other tip I got was to make sure you understand your solutions. When you finally resolve a problem it is tempting (albeit sometimes necessary) to move straight on to the next problem without thoroughly understanding what you just did.
Forcing yourself to go over your own solutions, and in particular extracting the steps involved, can really consolidate your knowledge.
Forcing yourself to go over your own solutions, and in particular extracting the steps involved, can really consolidate your knowledge.
This is one of those hard work things.