A textbook suitable for undergraduate courses. The materials are presented very explicitly so that students will find it very easy to read. A wide range of examples, about 500 combinatorial problems taken from various mathematical competitions and exercises are also included.