Competitions · Computer science · ICPC

ICPC, the International Collegiate Programming Contest.

Three people, five hours, around ten problems - and one computer between them. The oldest and largest programming contest in the world, and the reason team strategy matters as much as algorithms.

  • 3per team
  • 1computer
  • 5hours

Read this first

ICPC is a university contest.

It appears on lists alongside the school competitions, which misleads families planning a secondary-school season.

Undergraduates and postgraduates only

Every team member must be a currently enrolled undergraduate or postgraduate student, and all three must attend the same institution. There is no school division.

Verified at the door

Competitors present photo identification and documentation from their institution when entering the contest venue. Eligibility is checked, not assumed.

For school students, USACO is the equivalent

A secondary-school student aiming at this eventually should be building toward it through USACO, the Canadian contest and the Chinese informatics olympiad route.

And TopCoder is the standard training ground

It has long been used as ICPC preparation, and the algorithmic ground overlaps heavily even though the format does not.

At a glance

What the contest is.

ICPC traces to 1970, when the first contest was held at Texas A&M under the Alpha Chapter of the UPE Computer Science Honor Society. The first World Finals were held in 1977 at the ACM Computer Science Conference, and it has run annually since.

Organiser
The Association for Computing Machinery (ACM)
Since
1970
Scale
More than 50,000 students a year, from over 3,000 universities, across 400-plus onsite contests
Sponsors
AWS, Huawei and JetBrains. The ICPC Beijing headquarters at Peking University organises the East Asia regionals
Who can enter
Teams of three currently enrolled undergraduates or postgraduates from the same institution
Duration
5 hours
Problems
Around ten, on simulation, mathematics, strings, graph theory and dynamic programming, each with its own time and memory limits
Equipment
One computer and one calculator per team. No personal computers, terminals, calculators or other electronics, and no printed material, data or machine-readable media
Language of the problems
English
Programming languages
Java, C, C++, Kotlin and Python
Structure
Continental regional contests, then the World Finals
Team limits
In principle a university may enter up to three teams at one regional, but only one may reach the World Finals

What makes it different

One computer, three people, five hours.

Set against the International Olympiad in Informatics, where competitors work alone, ICPC is a fundamentally different problem.

The machine is the bottleneck

Three competitors share a single computer. Only one can type at a time, which means the other two are reading, planning or writing code on paper. Deciding who gets the keyboard is a live strategic question for five hours.

Volume, not just difficulty

Around ten problems in five hours. Recognising quickly which problems are tractable, and in what order, matters as much as solving any one of them.

And the board freezes for the last hour

Standings are live for four hours and then frozen. Teams spend the final hour without knowing where they stand, which is a psychological test as much as a technical one.

So temperament is part of the skill set

The organisers say so directly: alongside solid programming, teamwork and composure under pressure decide the result.

Scoring

Most problems solved, then least time - and errors cost twenty minutes.

The penalty system is what makes ICPC scoring counter-intuitive, and it rewards verifying before submitting.

Problems first

The team that solves the most problems wins. Total time only separates teams that have solved the same number.

Time is measured from the start of the contest

For each solved problem, the time counted is from the contest opening to the accepted submission. Unsolved problems contribute nothing.

Every rejected attempt adds twenty minutes

But only on problems the team eventually solves. A wrong submission on a problem never solved costs nothing.

Which can decide a tie

Two teams solve two problems each. One submits at 1:00 and 2:45, totalling 3:45. The other submits at 1:20 and 2:00 with one rejected attempt - 1:20 plus 2:00 plus 20 minutes, or 3:40. The second team wins on time despite the error.

Judgements

Seven verdicts, and only one of them is good.

A submission goes to the judge and comes back with one of these. Recognising which failure you have had determines what to fix.

VerdictWhat it means
Accepted (AC)The solution is correct. This is the only verdict that scores
Wrong Answer (WA)The program ran but produced the wrong result
Runtime Error (RE)The program crashed or terminated unexpectedly
Time Limit Exceeded (TLE)The program did not finish inside the problem’s time limit - usually an algorithm problem, not a coding one
Presentation Error (PE)The answer was right but not formatted as the problem specified
Memory Limit Exceeded (MLE)The program exceeded the memory the problem allows
Compile Error (CE)The program did not compile

Each of these except Accepted adds twenty penalty minutes if the team later solves that problem. Presentation Error in particular is worth guarding against, because it costs a full penalty for a solution that was correct.

The route and the rewards

Regionals, then the World Finals.

Places at the finals are allocated in three separate ways, which is worth understanding before assuming a regional win is the only route.

Participation slots

Allocated by ICPC headquarters to each continental region, then distributed by the regional chair among sub-regions. The winner of each regional qualifies automatically.

Medal bonus slots

Allocated by headquarters directly to specific universities on the strength of the previous year’s World Finals results.

And other bonus slots

Additional places that regional chairs negotiate from headquarters. A team that did not win its regional may still travel.

What the regionals award

Gold, silver and bronze typically at the top 10%, 20% and 30% - with 120 teams, that is 12 gold, 24 silver and 36 bronze, with the rest receiving honourable mention.

The World Finals

A trophy, medals, and scholarships to tenth place.

The finals reward more deeply than most contests, and they also decline to rank the bottom half.

A trophy for first

The World Finals winner receives a trophy, and the leading teams take gold, silver and bronze medals.

Scholarships through the top ten

USD 12,000 for first, 6,000 for second, 3,000 for third, and 1,500 each for fourth to tenth.

And continental champions are named

North American, European, South Pacific and Asian champion titles are awarded alongside the overall placings.

Below the median, no ranking

Teams solving fewer problems than the middle of the field are acknowledged as finalists but are not placed. Reaching the finals is itself the result.

Why Hanlin

Preparation for ICPC at Hanlin is taught by full-time subject tutors, on a course tier chosen by placement paper rather than by year group.

2017Founded
30,000+Students served
1,000+Schools represented
22Tutors on the roster

Programme formats

Five ways this is taught.

Group size is the whole difference between these. It decides how much of the tutor's attention a student gets and how far the course can bend to them, so it is worth choosing rather than accepting.

FormatGroup sizeWhat it suits
One-to-oneOne studentContent, pace and emphasis set by what this student actually needs rather than by a syllabus. The only format that can be rebuilt mid-course.
Small groupThree to eightOpens at three. Frequent discussion, and the tutor can slow down or move on according to what the group has absorbed. Most students chasing a higher award are taught in this one.
ClassEight to twelveTaught by the subject lead or a medal coach. Less back-and-forth, so it suits a student who will say when something is unclear.
Large classTen to twentyFor students in the middle of the placement range, and a way to try a competition before committing. Students often move to a small group or to one-to-one afterwards.
Past-paper classNo capPast papers worked through in sequence in the weeks before the sitting. Free to students already enrolled.

Course length for ICPC is set after a placement paper. The gap between where a student is and what the paper asks for is what the course has to close, and that gap is not the same for two students in the same year group.

How it runs

Six steps, four people on your side.

The same process for every student, so that nothing depends on one tutor remembering to do it.

Step 1

Pre-course assessment

A placement paper before anything is booked, so the course tier is chosen on evidence rather than on a year group.

Step 2

Tutor matching

A subject tutor is matched to the result, and their full background is provided before you agree to it.

Step 3

Plan and group

A study group opens with four people on one student: the tutor, a planner, a supervisor and an academic manager.

Step 4

Scheduled teaching

The teaching office sets the timetable around the competition date and school term, and teaching begins.

Step 5

After-class reports

What was covered, and how the student handled it, reported after every lesson.

Step 6

Homework follow-up

The teaching assistant and the form teacher both check that homework is done, which is where most preparation quietly fails.

Free resource pack

Past papers and preparation pack

The same material our own ICPC students work from. Scan the code, say what you need, and an advisor sends it.

Scan to consult on WeChat
Scan to consult on WeChat
Scan to ask on WeChat

Tell an advisor which competition and year group, and the material comes back the same day. Free, and you do not have to enrol in anything. If we do not already hold what you need, we will go and find it.

Usually asked forand more on request
  • PDFPast papers, every year the organiser has released
  • PDFWorked solutions, where the organiser publishes them
  • PDFThe syllabus on one page - every topic, and how heavily it is examined
  • PDFEntry checklist and the dates for the current cycle

Teaching team

Who would teach it.

Three of the twenty-two tutors on the published Hanlin roster - the ones whose subject this is.

Hanlin computer science tutor Luo
Computer science

Luo

Bachelor's and master's in computer science from the University of California and ten years in the United States. Works close to the hardware, and teaches for independent problem solving rather than pattern recall.

Hanlin mathematics and data science tutor Tan
Mathematics and data science

Tan

Master's in data science from the University of Sydney after a statistics degree at Simon Fraser University, graduating in the top 5% with repeated chancellor's honours; A-Levels at a Cambridge international school, and formerly a data analyst at Tencent. An AMC-accredited coach, a College Board-accredited AP teacher, and holder of a Math League excellent-teacher award.

Hanlin mathematics and computing tutor He
Mathematics and computing

He

A Cambridge master's after a computer science degree with a mathematics minor at the University of Nebraska-Lincoln, and a US high school GPA of 4.13. Six years overseas and teaches entirely in English, across AMC, Math League, AP Computer Science and AP Calculus.

Where it is taught

Hanlin learning centres.

Teaching runs from Hanlin's own centres in Shanghai, Shenzhen, Chengdu and Hangzhou, and online for students elsewhere.

Tiered forum space with university pennants at a Hanlin learning centre
The reception area at a Hanlin centre
A training room at a Hanlin learning centre
The student lounge at a Hanlin learning centre
A tutorial room at a Hanlin learning centre
A classroom at a Hanlin learning centre
The Hanlin education building in Shanghai

Talk to an advisor

Everything Hanlin does for ICPC, in one conversation.

Entry, planning, coaching and the past papers. An advisor will tell you which of these a student actually needs, including when the answer is none of them.

  • Competition entry and planning

    Which competitions suit this student, in what order, and by when - then we handle the registration, including the ones that can only be entered through a school or a centre.

  • Competition coaching

    Taught by full-time subject tutors, on a course tier chosen by placement paper rather than by year group.

  • International curriculum tutoring

    IB, AP, A-Level, IGCSE and the US high school curriculum, taught alongside school and timed around the exam calendar.

  • Competition past papers, free

    A large library of past papers, mark schemes and syllabus breakdowns across every competition on this site. No charge and no enrolment.

WeChat

Scan to add an advisor

Scan to consult on WeChat
Scan to consult on WeChat

Say which competition or course you are asking about. Replies in Chinese or English.

Or call +86 21 6352 6630

FAQ

ICPC, briefly answered.

What students and families ask about it.

Can a high-school student enter ICPC?

No. Team members must be currently enrolled undergraduates or postgraduates at the same institution, and identification and school documentation are checked at the venue.

What should a school student do instead?

Build toward it through USACO, the Canadian Computing Competition and the Chinese informatics olympiad route, and use TopCoder for regular practice. All of them develop the same algorithmic ground.

How is a team structured?

Three students from the same institution, sharing one computer and one calculator for five hours. Personal computers, calculators, printed material and other electronics are not permitted.

How many problems are there?

Around ten in five hours. The source gives the number three different ways - eight, about ten, and seven or more - so confirm the current format with the organiser.

How does scoring work?

The team solving the most problems wins. Ties are broken on total time, counted from the start of the contest to each accepted submission, with twenty penalty minutes added for each rejected attempt on a problem the team eventually solves.

What does it mean when the board freezes?

Standings are shown live for the first four hours and then hidden. Teams work the final hour without knowing their position.

Which languages may we use?

Java, C, C++, Kotlin and Python. The problems are set in English.

How does a team reach the World Finals?

Through participation slots allocated to each region, with each regional winner qualifying automatically; through medal bonus slots given to universities on last year’s finals results; or through additional bonus slots negotiated by regional chairs. A university may reach the finals with only one team.

How does it compare with the informatics olympiad?

The international olympiad is an individual contest with fewer, harder problems. ICPC is a three-person team contest with high problem volume and a single shared computer, which makes collaboration and pacing decisive.

Related

The school-age route toward it.

What a student builds through before university.

ICPC enquiries

The contest is for university. The preparation is not.

ICPC is closed to school students, but the algorithmic work that leads to it starts years earlier. Tell us what year the student is in and an advisor will map the school-age contests that build toward it.

Competition enquiries+86 21 6352 6630 Curriculum & test enquiries+86 21 6352 6628
Service citiesShanghai · Shenzhen · Chengdu · Hangzhou