Hydro Contest OS

Hydro Contest OS is the standardized workstation environment maintained by the technical team for XCPC onsite contests, providing consistent compilers, IDEs, desktop settings, user restrictions, and onsite operations tools across venues and seasons.

2026 season environment

Hydro Contest Team customizes this environment based on the programming tools provided at the ICPC World Finals. It is planned for use at selected ICPC Asia East Regional Contests.

Base system

  • Ubuntu 24.04.5 LTS (Noble Numbat), amd64
  • Linux kernel 7.0.0 HWE (linux-generic-hwe-24.04)
  • GNOME desktop
  • BIOS and UEFI boot support

Editors and IDEs

Editors include Vim, Neovim, GNU Emacs, gedit, Geany, and Kate.

IDE Version
Eclipse 2025-09, with CDT 12.2.0 and PyDev 13.1.0
IntelliJ IDEA Community Edition 2025.2.1
CLion 2025.2.1
PyCharm Community Edition 2025.2.1.1
Visual Studio Code 1.114
Code::Blocks 20.03

Visual Studio Code includes C/C++, Java, Python, and Kotlin support, optional Vim and Sublime Text keybindings, and a Simplified Chinese UI.

AI-assisted coding is disabled. All AI-related plugins and features bundled with the JetBrains IDEs and Visual Studio Code are disabled, including AI chat and AI code completion.

Languages and judge parameters

C — GCC 14.2.0

gcc-14 -x c -O2 -std=gnu23 -static {files} -lm

C++ — G++ 14.2.0

g++-14 -x c++ -O2 -std=gnu++23 -static {files}

In the login environment, gcc, g++, cc, and c++ use GCC 14.

Python — PyPy 7.3.21

PyPy implements Python 3.11. Use pypy3 to match the implementation used by the judge. CPython 3.12.3 is also installed and available through python and python3.

pypy3 -m py_compile {files}
pypy3 {mainfile}

Java — OpenJDK 21.0.11

javac -encoding UTF-8 -sourcepath . -d . {files}
java -Dfile.encoding=UTF-8 -XX:+UseSerialGC -Xss64m -Xms{memlim}m -Xmx{memlim}m {mainclass}

Kotlin — 1.9.24

kotlinc -d . {files}
kotlin -Dfile.encoding=UTF-8 -J-XX:+UseSerialGC -J-Xss64m -J-Xms{memlim}m -J-Xmx{memlim}m {mainclass}

{files} is the list of source files, {mainfile} is the Python entry file, {mainclass} is the Java or Kotlin main class, and {memlim} is the memory limit in MiB.

Before deployment, read the installation guide and administration guide.

Current build information

Built on 2026-09-15 21:38:12
Revision: 533cebb

Release files

Download 2026 imageubuntu-24.04.5-icpc2026-amd64.iso