The purpose of this book is to give you a thorough introduction to competitive programming. It is assumed that you already know the basics of programming, but no previous background in competitive programming is needed.
The book is especially intended for students who want to learn algorithms and possibly participate in the International Olympiad in Informatics (IOI) or in the International Collegiate Programming Contest (ICPC). Of course, the book is also suitable for anybody else interested in competitive programming.
It takes a long time to become a good competitive programmer, but it is also an opportunity to learn a lot. You can be sure that you will get a good general understanding of algorithms if you spend time reading the book, solving problems and taking part in contests.
This open book is licensed under a Open Publication License (OPL). You can download Competitive Programmer's Handbook ebook for free in PDF format (1.6 MB).
Table of Contents
Basics of graphs
Paths and circuits
Flows and cuts
Square root algorithms
Segment trees revisited
Sweep line algorithms
Competitive Programmer's Handbook
Open Publication License
This book provides a practical and self-contained overview of the Gene Ontology (GO), the leading project to organize biological knowledge on genes and their products across genomic resources. Written for biologists and bioinformaticians, it covers the state-of-the-art of how GO annotations are made, how they are evaluated, and what sort of analyse...
This Open Access handbook published at the IAMG's 50th anniversary, presents a compilation of invited path-breaking research contributions by award-winning geoscientists who have been instrumental in shaping the IAMG. It contains 45 chapters that are categorized broadly into five parts (i) theory, (ii) general applications, (iii) exploration a...
This book is a collection of short interviews with 14 prominent individuals from different parts of the world, from Australia to Canada, and of different occupations, from low-level programmers to physicists and musicians, asking them a more-or-less similar set of questions on the following topics: their general attitude to programming, attitude to...
Category Theory is one of the most abstract branches of mathematics. It is usually taught to graduate students after they have mastered several other branches of mathematics, like algebra, topology, and group theory. It might, therefore, come as a shock that the basic concepts of category theory can be explained in relatively simple terms to anybod...
Discover how to deliver reliable, high-performance APIs with our NGINX Real-Time API Handbook. Compiled by leading experts on real-time API management, this handbook is a comprehensive guide to reducing latency in your applications and APIs without making any compromises. Learn why now, more than ever, your APIs need to perform in real time to meet...
For many researchers, Python is a first-class tool mainly because of its libraries for storing, manipulating, and gaining insight from data. Several resources exist for individual pieces of this data science stack, but only with the Python Data Science Handbook do you get them all - IPython, NumPy, Pandas, Matplotlib, Scikit-Learn, and other relate...