ZsgsDesign / NOJ

⚡ The most advanced open-source automatic algorithm online judge system | 南京邮电大学开源 Online Judge | QQ群:668108264
https://acm.njupt.edu.cn
MIT License
942 stars 106 forks source link
laravel mixed-judge njupt noj online-judge onlinejudge php php7 virtual-judge

NOJ - Automatic Algorithm Test Platform

NOJ

NOJ's another online judge platform, stands for NJUPT Online Judge. It's written in PHP, GO, Python and other function-supporting languages and supports both online judges and virtual judges, we called it mixed judge.

Build Status License Scrutinizer Code Quality FOSSA Status GitHub repo size GitHub release Stars Forks

Built using Jet Brains Open Source License

JetBrains Logo (Main) logo.

v0.17.0 Characinae

For more information, please visit v0.17.0 Characinae Release Log page.

Installation

:exclamation: If you are having trouble installing NOJ or requires additional help setting up, you can contact us via noj@njupt.edu.cn or start an issue.

CentOS 8 will be recommended for hosting NOJ, but all major operating systems are theoretically supported.

We recommend running NOJ on the following platforms:

Your web browser should be one of the following:

Chrome
Chrome
Firefox
Firefox
IE
Internet Explorer
Edge
Edge
Opera
Opera
Safari
Safari
69 and above 62 and above Not supported 69 and above Not Supported 13.1 and above

We do not provide any support for Opera, which doesn't mean Opera cannot access NOJ without error, it just means issues about compatibilities of Opera will not be fixed.

For installation options and troubleshooting tips, see NOJ Documentation.

Supported Languages

NOJ now supports 15 popular programming languages, you can start issues about new languages support.

Language Compile/Run Command
C /usr/bin/gcc -DONLINE_JUDGE -O2 -w -fmax-errors=3 -std=c99 {src_path} -lm -o {exe_path}
C11 /usr/bin/gcc -DONLINE_JUDGE -O2 -w -fmax-errors=3 -std=c11 {src_path} -lm -o {exe_path}
C++ /usr/bin/g++ -DONLINE_JUDGE -O2 -w -fmax-errors=3 -std=c++11 {src_path} -lm -o {exe_path}
C++14 /usr/bin/g++ -DONLINE_JUDGE -O2 -w -fmax-errors=3 -std=c++14 {src_path} -lm -o {exe_path}
C++17 /usr/bin/g++ -DONLINE_JUDGE -O2 -w -fmax-errors=3 -std=c++17 {src_path} -lm -o {exe_path}
Java /usr/bin/javac {src_path} -d {exe_dir} -encoding UTF8
/usr/bin/java -cp {exe_dir} -XX:MaxRAM={max_memory}k -Djava.security.manager -Dfile.encoding=UTF-8 -Djava.security.policy==/etc/java_policy -Djava.awt.headless=true Main
Python2 /usr/bin/python -m py_compile {src_path}
/usr/bin/python {exe_path}
Python3 /usr/bin/python3.7 -m py_compile {src_path}
/usr/bin/python3.7 {exe_path}
PHP7 /usr/bin/php {exe_path}
Javascript /usr/bin/jsc {exe_path}
Go /usr/bin/go build -o {exe_path} {src_path}
C# /usr/bin/mcs -optimize+ -out:{exe_path} {src_path}
Ruby /usr/bin/ruby {exe_path}
Rust /usr/bin/rustc -O -o {exe_path} {src_path}
Haskell /usr/bin/ghc -O -outputdir /tmp -o {exe_path} {src_path}
Free Pascal /usr/bin/fpc -O2 -o{exe_path} {src_path}
Plaintext /bin/cat {exe_path}
Free Basic /usr/local/bin/fbc {src_path}

Supported Feature

Open Source Contributors

Contributors

Credits

Laravel

NOJ JudgeServer

NOJ Judger

See composer.json or package.json for more info.

License Info

FOSSA Status