The Stanford Mathematics Problem Book by J. Kilpatrick, George Palya & G.P. Lya