Here is a better idea... pick someone as your target whom you think to be same level as yours.. like, your programmer friends.. Now, go on their solve list, and see if you can solve them ( so that, you know you should be able to solve that, and in the same time, you don't know the category). Eventually you will move on to stronger opponents
like in other games..
And for the hints... at first it may seem to be spoiling.. but if you really want to reach a stage from where you could randomly try problems... you must go through some guided practice.. this helps in the long run..
So I would suggest, go category wise in UVa, follow some friend on SPOJ, USACO is already guided, you dont have options there but to follow their sequence.
Happy solving 