One core skill is ability to solve problems eventually, to not stop before you solved the problem. Bringing this to contest setting requires speeding up to a level that is probably unattainable because of limitations of raw ability, and might benefit from lots of training. But another failure mode is stopping right after you solve the problem, so that you won't notice a stupid error, even though you've got the solution. This is a piece of low-hanging fruit that doesn't necessarily require any significant effort (in comparison), but still needs to be collected.
Lately I've resolved to try harder at teaching myself math so I have a better shot at the international olympiad (IMO). These basically involve getting, say, three really hard math problems and trying your best to solve them within 5 hours.
My current state:
What does the intrumental-rationality skill of LWers have to say about this? What recommendations do you guys have for improving problem-solving ability, in general and specifically for olympiad-type environments? Specifically,