Illinois Programming League

Sponsored By Caterpillar


  • You can find our weekly contest problems and solutions on the blog: CodeForces blog
  • ICPC Slack

    If you have any questions, ping us on our Slack channel, #ICPC

    Quick Start:

    1. Sign up for CodeForces and join our group here: CodeForces Group
    2. Sign up for our RSO so we know who you are! IPL Signup Form
    3. Join the ACM slack and find our channel #ICPC
    4. Beginner's Cheatsheet


    Illinois Programming League (IPL) is a series of algorithmic programming contests organized by ACM SIG-ICPC at UIUC. Contestants try to solve problems that are likely to be asked in technical interviews. Come in practice and sharpen your programming skills!


    Every Tuesday, 7-9 PM


    Siebel 1109


    Free pizza will be provided for IPL contestants! (starting 6:45 PM)


    Anyone is allowed to participate in our weekly meetings.

    You are eligible to represent UIUC at the Regionals/World Finals if you are:
    • Enrolled in University of Illinois at Urbana-Champaign, and
    • Started college in 2014 or later OR born in 1995 or later.


    You must physically present in the room to compete. No remote participation allowed.

    However, you will be allowed to access the questions after the contest has ended, for your own practice.

    Students compete individually and communication during the contest is not allowed except for special 'open' contests.

    During the contest, Internet usage (e.g. Google, Stack Overflow, etc.) is forbidden, with the following exceptions: Any physical reference materials (e.g. notes, textbooks, printed code, etc.) are allowed. Any electronic and digital reference materials are forbidden, with exception of websites listed above.

    If you violate these contest rules, you will be disqualified from the leaderboard.


    In each contest,
    • Each problem is worth the same.
    • Contestants are ranked by the number of problems solved. Ties are broken by time penalty.
    • Time penalty = sum of {[Time of acceptance since start of contest] + 20mins * [number of rejected submissions before acceptance]} for each accepted problem
    • Baseline: work on easier problems first, solve quickly and accurately.

    After each contest, your rating will be adjusted based on your projected rank and actual rank.

    Languages allowed

    • C++ 11
    • Java 8
    • Python 3


    Please feel free to reach out to us at