Arguably competitive programming helps with this problem by letting you drill the concepts you've learned.