Location and Times

  • Course Title: Introduction to Competitive Programming
  • Rubric: CS 491 CAP
  • CRN: 31584
  • Dates: January 19 to May 4th, 2022, Mondays and Wednesdays
  • Time: 14:00 – 15:15
  • Location:
    • On Campus: 1131 Siebel Center
  • Instructor: Mattox Beckman
  • Recommended Textbooks:
  • Prerequisites: ability to program is necessary; CS 225 recommended. We will use C++ for our content, but you are welcome to use a different language.
  • Office Hours: tba


The purpose of this course is to prepare you to compete in ICPC-style competitive programming contests. While this will help you compete in the Illinois Programming League, Hacker Rank, Code Forces, or similar contests, learning this material has been shown to help with programming assignments in other courses, and many students learn this material to become confident and skillful in coding interviews.

Objectives and Outcomes

Upon successfully completing this course, you will have solved many programming problems. You will have learned to select the correct algorithm depending on the problem constraints and available time and memory resources. You will have learned to implement your solutions quickly and accurately, being given minimal guidance if your solution is incorrect. You will have learned to work on your own and in an ICPC style team of students using one computer. And hopefully you will have a lot of fun doing so!

Class Structure

This is a flipped classroom. You will be given a reading from the textbook, a short video to watch, and a sample problem or two to solve before class. During class the instructor will ask for student comments about the problems and give commentary. Afterward, there will be one or two more problems for you to do during class. Sometimes you will be asked to solve them individually, sometimes you will be placed in a team. Once every two weeks we will also release a problem set with a variety of problems to give you practice picking the correct algorithm to use.

Multi-modal Structure

We are hoping that most students will be able to attend class in person. For those who cannot, you will have the option of attending synchronously using Zoom, or asynchronously by making specific arrangements with the instructor. Interaction with the instructor and the other students is an important component of the course; if you feel you are unable to do this then please discuss your situation with the instructor.

Assignments and Grading

This course is a Credit/No Credit course. To get credit, you must complete 70% of the class-related problems, attend at least 70% of the class sessions (or have made other arrangements), and complete six of the given bi-weekly problem sets. You may also get problem set credit by competing in an ICPC tryout or other significant externally held contest.

We will also have an assignment where you prepare a Team Reference Document. This assignment is not required, but highly recommended.

We will use a Canvas site to keep track of the problems you have completed and your attendance record.

Students with Disabilities

To obtain disability-related academic adjustments and/or auxiliary aids, students with disabilities must contact the course instructor as soon as possible. To insure that disability-related concerns are properly addressed from the beginning, students with disabilities who require assistance to participate in this class should contact disability resources and educational services (DRES) and see the instructor as soon as possible. If you need accommodations for any sort of disability, please speak to me after class, or make an appointment to see me, or see me during my office hours. DRES provides students with academic accommodations, access, and support services. To contact DRES you may visit 1207 S. Oak St., Champaign, call 333-4603 (v/tdd), or e-mail a message to

Emergency Response Recommendations

The university police have posted some emergency response recommendations. I encourage you to review this website and the campus building floor plans website within the first 10 days of class.

Of course, since we’re all online, your classroom is likely your living space. Have you considered making a fire safety plan with your family or roommates?

Family Educational Rights and Privacy Act (FERPA)

Any student who has suppressed their directory information pursuant to family educational rights and privacy act (FERPA) should self-identify to the instructor to ensure protection of the privacy of their attendance in this course. see the FERPA site for more information.

Mental Health

Diminished mental health, including significant stress, mood changes, excessive worry, substance/alcohol abuse, or problems with eating and/or sleeping can interfere with optimal academic performance, social development, and emotional wellbeing. The University of Illinois offers a variety of confidential services including individual and group counseling, crisis intervention, psychiatric services, and specialized screenings at no additional cost. If you or someone you know experiences any of the above mental health concerns, it is strongly encouraged to contact or visit any of the Universitys resources provided below. Getting help is a smart and courageous thing to do – for yourself and for those who care about you.

Counseling Center: 217-333-3704, 610 East John Street Champaign, IL 61820

McKinley Health Center:217-333-2700, 1109 South Lincoln Avenue, Urbana, Illinois 61801