System

Programming Languages

The following programming languages will be available:

  • C++ (GCC 12.2.0), compiled with g++ -x c++ -std=gnu++2b -Wall -O2 -static -pipe -DONLINE_JUDGE -DDOMJUDGE -o "$DEST" "$@"
  • C (GCC 12.2.0), compiled with gcc -x c -std=gnu2x -Wall -O2 -static -pipe -DONLINE_JUDGE -DDOMJUDGE -o "$DEST" "$@" -lm
  • Java (OpenJDK 17.0.9), compiled with javac -encoding UTF-8 -sourcepath . -d . "$@" and executed with java -Dfile.encoding=UTF-8 -DONLINE_JUDGE -DDOMJUDGE -XX:+UseSerialGC -Xss65536k -Xms1966080k -Xmx1966080k '$MAINCLASS' "$@"
  • Python 3 (3.9.16) with PyPy (7.3.11), compiled with pypy3 -m py_compile "$@" and executed with export ONLINE_JUDGE=1 DOMJUDGE=1; pypy3 "${MAINSOURCE}" "$@"
  • Haskell (GHC 9.0.2), compiled with ghc -x hs -Wall -Wwarn -O -static -optl-static -optl-pthread -cpp -DONLINE_JUDGE -DDOMJUDGE -o "$DEST" "$@"

Limits

Execution as described above will take place in a sandbox. The sandbox will allocate 2 GiB of memory; the entire program, including its runtime environment, must execute within this memory limit. For interpreted languages (Java and Python) the runtime environment includes the interpreter.

The sandbox memory allocation size will be the same for all languages and all contest problems. For Java, the command above shows the stack size and heap size settings which will be used when the program is run in the sandbox. For C, C++, and Python, the stack and heap sizes are limited only by the total amount of memory available in the sandbox.

Partners

Competitive Programming Ulm
AltaSigma GmbH
Thank you to AltaSigma GmbH, who kindly sponsored the infrastructure the contest judge runs on.

Want to become a partner?
Reach out to us (in German or English) at contact@gcpc.nwerc.eu!