System
Programming Languages
The following programming languages will be available:
- C (GCC 10.2.1), compiled with
gcc -x c -Wall -O2 -static -pipe -DONLINE_JUDGE -DDOMJUDGE -o "$DEST" "$@" -lm - C++ (GCC 10.2.1), compiled with
g++ -x c++ --std=gnu++20 -Wall -O2 -static -pipe -DONLINE_JUDGE -DDOMJUDGE -o "$DEST" "$@" - Haskell (GHC 8.8.4), compiled with
ghc -x hs -Wall -Wwarn -O2 -static -optl-static -optl-pthread -optl -Wl,--allow-multiple-definition -cpp -o "$DEST" "$@" - Java (OpenJDK 17-ea), compiled with
and executed withjavac -encoding UTF-8 -sourcepath . -d . "$@" java -Dfile.encoding=UTF-8 -DONLINE_JUDGE -DDOMJUDGE -XX:+UseSerialGC -Xss65536k -Xms1966080k -Xmx1966080k '$MAINCLASS' "\$@" - Python 3 (3.7.12) with PyPy (7.3.7), compiled with
and executed withpypy3 -m py_compile "$@" export ONLINE_JUDGE=1 DOMJUDGE=1; pypy3 "${MAINSOURCE}" "\$@"
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++, Haskell, and Python, the stack and heap sizes are limited only by the total amount of memory available in the sandbox.
Partners
Want to become a partner?
Reach out to us (in German or English) at contact@gcpc.nwerc.eu!