Programming Challenges – Steven S. Skiena, Miguel A. Revilla – 1st Edition


The challenges of problems from international programming competitions are an effective way to improve your algorithmic and coding skills and understanding.

This volume uses international programming competition-type problems to motivate the study of algorithms, programming, and other topics in science. The book includes more than 100 programming challenges, as well as the theory and key concepts necessary for approaching them. Problems are organized by topic, and supplemented by complete tutorial material. Readers gain a understanding of both algorithmic techniques and advanced coding topics.

Unique Features:

* Offers a wealth of rich programming problems suitable for self-study — all with on-line judging at

* Presents practice training for all major programming contests — ACM International Collegiate Programming Contest (ACM ICPC), International Olympiad in Informatics (IOI), and Topcoder Challenge

* Serves as a convenient, -based means of adding a programming component to any algorithms or software engineering

* Contains complete working code for fundamental data structures and graph, string, numerical and geometric algorithms

* Provides a brief-yet-thorough treatment of key elements in number theory, geometry, dynamic programming, and graph algorithms

* Supports all popular programming languages (C, C++, Pascal, Java)

Steven S. Skiena is a member of the faculty of at SUNY Stony Brook and is author of many widely used books, including The Algorithm Design Manual. He received the 2001 Society Undergraduate Teaching Award.

Miguel Revilla is a member of the faculty of at the University of Valladolid, Spain. He is official website archivist of the ACM ICPC and creator/maintainer of the primary robot-judge, contest-hosting website.

View more

    • Getting started

    • Data structures

    • Strings

    • Sorting

    • Arithmetic and algebra

    • Combinatorics

    • Number theory

    • Backtracking

    • Graph traversal

    • Graph algorithms

    • Dynamic programming

    • Grids

    • Geometry

    • Computational geometry

    • Appendix

  • Citation

Leave us a commentNo Comments

Inline Feedbacks
View all comments
Would love your thoughts, please comment.x