How to form your first ICPC team
ICPC Bolivia Committee
The ICPC is not an individual competition. Three people share a single computer for five hours to solve somewhere between ten and thirteen problems. That completely changes what “being prepared” means: it is not enough for each member to know how to code, the team has to know how to divide up keyboard time.
Divide roles, not topics
The most common mistake is splitting by topic: “you take graphs, I’ll take geometry.” In practice a problem statement almost never announces its topic, and that split leaves two people waiting around.
Splitting by function works better:
- The reader. While someone is coding, another person is already reading the next statements and sorting them by apparent difficulty.
- The implementer. Owns the keyboard. Their priority is writing clean code that compiles on the first try, not elegant code.
- The verifier. Designs test cases on paper, checks the limits and hunts for the edge case that will break the solution before it is submitted.
The roles rotate during the contest. What does not rotate is that someone is always reading ahead.
Start with the easy problems
The problems are not ordered by difficulty. The first twenty minutes should be spent reading the whole set and ranking it, not attacking problem A.
On the scoreboard, solving five easy problems quickly is worth more than solving two hard ones slowly: ties are broken on accumulated time, and every incorrect submission adds a penalty.
Practice under real conditions
Practicing separately is how you learn algorithms. Practicing as a team is how you learn to compete, and they are different skills. At least once a week:
- Pick a complete problem set from a past regional.
- Time exactly five hours, with no breaks.
- Use a single computer. This is the part most teams never practice.
- When you finish, spend half an hour going over what you missed and why.
Virtual Judge lets you put together these private contests by combining problems from several judges. It is the standard tool for mock contests.
Prepare a template and a notebook
Before the contest, agree on a base code template: the includes, the fast-input macros
and the structures you always use. Writing it from scratch during the contest is time
given away.
The team notebook should hold the implementations that take more than ten minutes to write from memory: data structures, graph algorithms and modular arithmetic. The 2026 rules allow printed material in whatever quantity each site determines, so confirm that limit with your local organizer before the contest.
The most important thing
A team that communicates well and knows intermediate algorithms performs better than three brilliant individualists. Communication is something you train, just like theory, and it is the part almost nobody trains.
If you have questions putting your team together, write to us on Telegram. We help connect students from the same university who are looking for teammates.