Competitive Programming Resources

Books

  • Antti Laaksonen:   Guide to Competitive Programming: Learning and Improving Algorithms Through Contests
    • PDF of the book is available from Springer Link from Purdue IP addresses.
    • A free earlier version of the book titled "Competitive Programmer's Handbook" Author's Site
  • Johan Sannemo:   Principles of Algorithmic Problem Solving
  • Steven S Skiena and Miguel A. Revilla: Programming Challenges: The Programming Contest Training Manual
    • PDF of the book is available from Springer Link from Purdue IP addresses.
  • Steven Halim and Felix Halim:   Competitive Programming
  • Other Competitive Programming Courses

  • Reykjavik University: T-414-ÁFLV: A Competitive Programming Course
  • Stanford: CS 97SI: Introduction to Programming Contests
  • CMU: 15-295: Competitive Programming and Problem Solving
  • UT Austin: CS104c: Competitive Programming
  • Stonybrook: CSE 300X - Programming Challenges
  • National University of Singapore: CS3233: Competitive Programming
  • ITMO University (course through EDX): How to Win Coding Competitions: Secrets of Champions
  • Other Online Algorithm Courses

  • Robert Sedgewick and Kevin Wayne (Princeton University): Algorithms, Part I and Algorithms, Part II on Coursera.
    • These courses are free. Assignments are in Java.
  • Tim Roughgarden (Stanford University): Algorithms Specialization on Coursera
    • Assignments in any language, and quite mathematical. Similar to 381. The specialization has four courses, cost is ($49 per month), in order to submit assignments and have them graded. (1) Divide and Conquer, Sorting and Searching, and Randomized Algorithms, (2) Graph Search, Shortest Paths, and Data Structures, (3) Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming, (4)Shortest Paths Revisited, NP-Complete Problems and What To Do About Them.
  • Daniel M Kane, Neil Rhodes, Pavel Pevzner, Michael Levin, Alexander S. Kulikov (UC San Diego): Data Structures and Algorithms Specialization on Coursera.
      This has six courses, cost is ($49 per month), in order to submit assignments and have them graded. (1) Algorithmic Toolbox, (2) Data Structures, (3) Algorithms on Graphs, (4) Algorithms on Strings, (5) Advanced Algorithms and Complexity, (6) Genome Assembly Programming Challenge
  • Some Online Contests (with dates in Spring 2019)

  • USACO: Spring 2019 dates: Jan 18-21, Feb 22-25, Mar 29-Apr 1
  • Google Code Jam: Spring 2019 dates: Apr 6 (Qualification round), Apr 13 (1A), Apr 38 (1B), May 4 (1C).

    ICPC Regionals with Problem Sets, Scoreboards, and Solutions.

    Problem submissions for NWERC, NEERC, CERC, and SWERC can be done at ICPC Live Archive