Mathematical Olympiad treasures - Andreescu, Titu (Birkhäuser, 2011)