Tournament rules
Exactly how Battles decides a result: who may enter, check-in and seeding, byes, what settles a match that runs out of time, ICPC ranking and penalty minutes, which verdicts cost nothing and how a frozen board is revealed.
Who may enter
- A tournament is public only when its organization has been verified by CodeKairo. Drafts, and every tournament of an unverified organization, are visible to its organizers alone.
- A knockout's players register themselves on the tournament page before registration closes. A tournament may be open to anyone or limited by any combination of email domains (an address on a listed domain or one of its subdomains qualifies; a look-alike domain does not), an invite code and the organizer's approval of each registration, and it may cap its places.
- An ICPC-style contest takes no registrations: the organizer enters every team, naming each member by CodeKairo email or username. No one appears in two teams of the same list.
- The format and the team size cannot change once a tournament is published.
How a knockout is decided
- Check-in opens 60 minutes before the start and closes at the start. Only players who checked in are seeded; a registered player who did not check in does not play.
- Players are seeded by CodeKairo rating, highest first; equal ratings are ordered by who registered first.
- The bracket is the smallest power of two that holds every player. The places beyond the field are byes, given to the top seeds, and no first-round match is two byes. Seeds are placed in the standard order, so the top two can meet only in the final.
- Every match of a round is played on the same problem: round one on the organizer's first problem, round two on the second, and from the first again if there are more rounds than problems.
- A match runs for the length the organizer set, from 10 minutes to 12 hours. The first accepted solution wins it at once.
- If the clock runs out with no accepted solution, the player who passed more hidden test cases wins; if they passed the same number, whoever reached it first; if neither submitted, the better seed. A player who never submitted loses to one who did.
- A match starts one minute after both of its players are known. The winner of the final is the champion; everyone else's placement is the round they reached — Runner-up, Semifinalist, Quarterfinalist, Round of 16 and so on.
How a contest is ranked
- Every team starts and finishes on the same clock, set by the organizer from 10 minutes to 12 hours. The problems are hidden until the start.
- Teams rank by problems solved, then by total penalty time, then by the time of their last solve, earliest first. Teams equal on all three share a rank.
- A solved problem's penalty is the whole minutes from the start to its first accepted submission, plus 20 minutes for each rejected attempt before it. An unsolved problem costs nothing, however many attempts it took.
- Wrong answer, time limit exceeded, runtime error and memory limit exceeded are rejected attempts. A compile error, or the judge failing to run the code, is not an attempt and costs nothing.
- Once a team has solved a problem, its later submissions on that problem are ignored.
- If the organizer sets a freeze, the public board stops updating for the last part of the contest — an hour by default: attempts made then show as pending. After the end, the organizer reveals the final standings.
What counts on CodeKairo
- An accepted submission in a tournament is an ordinary CodeKairo submission. It counts toward your solved problems, activity heatmap, streak and DSA roadmap stages.
- A problem pays its XP once, the first time you solve it, wherever that happens.
- A problem you solved in a tournament is marked so in the catalogue and on its page, and your profile's Tournaments section lists every tournament you played with where you finished.
What an organizer can and cannot do
- Anyone signed in can create an organization and draft tournaments; one account may hold up to three organizations awaiting verification. A verified organization's name cannot change without CodeKairo support.
- An organizer chooses the problems — up to 15 from the CodeKairo catalogue — but not how they are judged: the same hidden tests decide every verdict for every player.
- An organizer sees each entrant's CodeKairo name and email domain, never the email address.
- An organizer can approve or decline registrations until the start, open any match to watch it and reveal a frozen scoreboard after the end.