A very interesting non-calculus mathematics book is ‘Problem-Solving Strategies’, by Arthur Engel. It gathers competition problems from over twenty national and international competitions of high school students.
The book is composed of 14 chapters. Each of these explains a particular mathematical concept, like the Extremal Principle, shows some exercises with solutions and then proposes some end-of-chapter exercises. The level of such exercises can vary from very simple to extremely difficult, so anyone can have fun with this book. Also, because it talks about non-calculus principles, there are very few requirements you need before reading it. Some of them are: basics of trigonometry, vectors, modular arithmetics.
Personally, I think this book really helped pave the way to develop my problem-solving skills. In fact, it features a lot of ingenious ideas behind very nice problems. Also, the solutions of the end-of-chapter exercises are very synthetic, so understanding them with so few lines of explanation is also a challenge, but once you get the gist of the problem you’ll never forget it.
My favourite problem is the Sylvester Problem (page 43), which states:
A finite set S of points in the plane has the property that any line through two of them passes through a third. Show that all points lie on a line.
Believe it or not, the proof is just 6 lines long, and it’s the most ingenious trick I’ve ever seen.
To sum up, I recommend this book to everyone who would like to gain a deep insight into the Mathematical Olympiads problems, but also to everyone who would like to explore fancy non-calculus techniques, as it’s essentially a complete book.