I want to prepare for the maths olympiad and I was wondering if you can recommend me some books about combinatorics, number theory and geometry at a beginner and intermediate level. I would appreciate your help.
Problem solving strategy by Engel. Pretty advanced though
If you're looking for a good Geometry book, you can check out Evan Chen's book, Euclidean Geometry In Mathematical Olympiads. There are no prerequisites to the book; all you need to do is know how to read proofs. A PDF of the book is $28:
As a sample, here's a free PDF of chapter 2:
An elementary intro to combinatorics, with exercises: https://www.amazon.com/Discrete-Mathematics-Highschooler-Alexander-Sadovsky/dp/1453869670/ref=sr_1_fkmr0_1?ie=UTF8&qid=1469170334&sr=8-1-fkmr0&keywords=sadovsky+discrete+math+for+highschooler
Instructional videos on combinatorics: https://www.youtube.com/watch?v=QrfA8mKOIjI
Books specifically on contest problems: https://www.amazon.com/William-Lowell-Mathematical-Competition-1985-2000/dp/088385807X/ref=sr_1_1?s=books&ie=UTF8&qid=1469170542&sr=1-1&keywords=putnam+problems
One of my favorite mathematical olympiad books is this one: https://www.amazon.es/Mathematical-Olympiad-Challenges-Titu-Andreescu/dp/0817645284 by Andreescu and Gelca. It's more on the itermediate level. It is sort of a compilation on useful techniques with sample problems. I suggest you give it a go.