Mathematical olympiad challenges - Andreescu, Titu (Springer, 2004)