brunostStudio
brunostStudio

Rated programming contests

Code, prediction files, models, and quizzes in one contest.

Solve code tasks, submit prediction files or CPU ONNX models, and take quizzes in rated rounds.

Practice the IOAI 2026 Individual Contest: six tasks, open until September 2027.

Several formats, one judge

Code, prediction files, CPU models, and quizzes share one contest and scoreboard.

Every task, one rating

All four task types count toward the same public ranking.

Judged like an olympiad

Pinned environments, a frozen scoreboard, and a locked results snapshot. Built for the IOAI.

For competitors

Climb one rating across every format.

Enter timed rounds, work through the archive afterwards, and watch your level move with every public contest.

  • Rated public rounds
  • Practice archive of past problems
  • Browser Lab, nothing to install

For organizers

Host a round your way.

Write Code, Prediction file, Model, and Quiz tasks in Contest Studio and run them on the open-source Judge.

  • Private and invite-only rounds
  • Locked task versions for reproducible results
  • Open-source, self-hostable Judge
Brunost Premium

Sign in

Use your Brunost account to enter contests, submit work, and review results in My Lab.

or
We email you a one-time link. Once you are in, set a new password under Settings.

One workshop · three modes

Pick up where you left off.

Contests, practice problems, and your browser Lab, all scored by the same Judge.

—
Account

Loading your account…

—
Activity

Loading recent activity…

—
Notifications

    How rating works

    One number, across every format

    Your rating moves only when a rated contest finishes, and every format counts toward the same number: code, prediction files, models and quizzes.

    It measures where you finish, not what you solve. Solving a problem everyone else also solved moves nothing. Finishing above contestants rated higher than you is what gains.

    You move halfway to what the round argues for. We work out the place your rating predicted, compare it with where you actually came, and move you half of the way to the rating that result implies.

    Nothing is created or destroyed. What you gain, the rest of the field gives up. Everyone starts at 1200.

    See the arithmetic

    Say you are rated 1200 and three contestants finish behind you: one rated 1000, one 1200, one 1400.

    What your rating expected, against what happened
    OpponentExpected to beat themYou didSurplus
    100076%yes+0.24
    120050%yes+0.50
    140024%yes+0.76

    Beating the 1400 is worth three times beating the 1000, because your rating said you probably would not. From those numbers we work out the place you were expected to take, compare it with the place you took, and find the rating that would have made your actual result ordinary. You move half of the way there — so the more wrong your rating was, the harder it moves, and a contestant who is plainly stronger than their number reaches their level in a few rounds rather than a few years.

    A 400-point gap means the higher-rated contestant is expected to win about nine times in ten. Ratings run from 0 to 5000.

    Levels
    LevelRating
    Newcomerunder 1400
    Pupil1400
    Specialist1600
    Expert1800
    Master2100
    Grandmaster2400

    Practice problems from the archive and unrated rounds never change your rating. You have to make at least one submission in a round to be rated by it — registering and not taking part costs nothing.

    Profile picture

    Avatar

    PNG, JPEG, or WebP. We crop it to a square and keep it under 256 KB.

    Password

    Choose a new password. If you signed in with an emailed link, leave the current password empty.

    Loading profile…

    Current contest

    Select a contest to begin.

    Problems stay in their own workspace so the contest brief remains easy to find and edit.

    No contest selected
    Build queue

    Problems in this contest

    0

    Open a problem to edit its statement, tests, or evaluation.

    Draft changes are saved per problem.

      Loading public submissions…

      Control room

      Platform administration

      Keep the competition platform healthy, approve access, and operate the Judge fleet from one calm workspace.

      Live control plane
      Today at a glance

      Everything in one place.

      Monitor access, capacity, and communication without leaving the control room. Changes made here are recorded against your administrator account.

      Last checked Waiting for data Automatic when this page opens
      Service status
      Operational Premium API and database
      Worker capacity◇
      — Loading Judge fleet
      Pending accounts◎
      — Waiting for approval
      Identity links↗
      — Explicit external mappings
      Shortcuts

      Common operations

      ↗
      Operator note

      Safe changes, visible history.

      ✓

      Worker changes require a reason. Credential revocation needs an additional confirmation. Every result is stored with your account and timestamp.

      Protected by administrator accessEmail link + authentication code or approved password account.
      Accounts

      Registration approvals

      New accounts remain inactive until an administrator reviews them.

      Requires review

      Waiting for your decision

      Approve trusted applicants or reject requests that need more information.

      01

        People

        Users

        Every account on the platform. Block stops sign-in and hides the person from rankings; remove erases the account.

        —

        Accounts

        Search by handle, name or email.

        01
        UserEmailRolesStatusJoined
        Loading…

        Oversight

        All contests

        Every contest anyone has created, including drafts, private rounds and archives.

        —

        Contests

        Open a contest to manage it, archive one that should no longer run, or delete an archived one for good.

        02
        ContestCreatorStatusVisibilityProblemsParticipantsCreated
        Loading…

        Execution plane

        Worker fleet

        Control capacity on the shared Judge without touching running submissions.

        Judge controls
        ◇
        Drain before maintenance.Pause stops new claims while active work finishes. Revoke is reserved for a lost or compromised credential.

        Recent worker operations

        Who changed the fleet, what happened, and why.

        02

          Communication

          Email centre

          Keep transactional messages useful, consistent, and easy to review.

          Resend delivery

          Message templates

          Choose a message type, edit both formats, preview it, and send a test to your administrator address.

          03

          Recent delivery attempts

          Provider responses and delivery status, without storing message bodies.

            Configuration

            System connections

            Review the explicit identity mappings that connect Brunost accounts to external services.

            Protected

            External identity links

            Email matching never grants access on its own.

            04

            Active mappings managed by administrators.

            Administrator session

            Current access level and authentication policy.

            ✓
            Sign-in policyOne-time link + code
            Data boundaryPremium + Judge
            Contest information

            Details

            Editable

            Access
            Contest content

            Problems

            0

            Each problem opens in its own editor. Nothing is expanded into this page.

              Lifecycle

              Publishing controls

              Keep the contest in draft while you prepare the brief and tasks.

              Post-contest

              Leaderboard A

              Freeze the eligible pre-deadline source attempts, run the separate evaluation, then release the immutable results snapshot.

              1 · Basics

              What are participants solving?

              Required
              Task family

              Code

              Judge program output or a small CPU training task.

              Choose one
              2 · Evaluation

              Choose how it is judged

              Judge contract

              Choose a scoring mode; family-specific fields appear below.

              Reference solution

              The Judge runs this trusted solution on each test input to produce the answer.

              Algorithm code

              Test dataset

              Add inputs one by one or upload text files. Expected output is optional with a reference solution.

              File typePlain text files: .txt, .in, or .input.
              Input styleOne file is one complete stdin test. Write values with spaces or line breaks exactly as the contestant program reads them.
              Output styleUse plain text stdout. A reference solution generates it; enter an answer key only when that option is selected.

              No test inputs yet. Add the first one.

              Simple authoring flow
              Choose Algorithm, write the reference solution, add the test dataset, check the contract, and save. Premium stores the definition; the open-source Judge executes it.