{% extends "layout/wiki_base.html" %} {% block wiki_content %}
每个用户可以创建自己的域。比如,老师可以为课程创建一个域,然后把题目和学生加入到此域中。再如,可以把域作为团队功能。
通过合理的设置角色及其权限,可以把域设为公开或私有。
默认域为Vijos,用户直接访问Vijos域名就会访问此域,点击Vijos Logo会从任意域跳转回Vijos域。
每个域的题库、讨论、训练以及比赛是独立且自治的。
Vijos使用jd4进行评测,以docker镜像的形式安装至评测机。所使用的编译器均为创建镜像时debian testing分支的最新版。编译参数如下:
- Free Pascal
fpc -O2 -o/out/foo /in/foo.pas- C
gcc -O2 -Wall -std=c99 -o /out/foo /in/foo.c -lm- C++
g++ -O2 -Wall -std=c++11 -o /out/foo /in/foo.cc -lm- Java
javac Main.java- Python
python foo.py- Python 3
python3 foo.py- PHP
php foo.php- Rust
rustc -O -o /out/foo /in/foo.rs- Haskell
ghc -O -outputdir /tmp -o /out/foo /in/foo.hs
Vijos 评测机使用进程的CPU时间计算时间消耗,时间的限定为题目中评测点所指定的时间。
Vijos 评测机使用进程虚拟内存与物理内存总和计算内存空间消耗。内存空间默认限定为256MiB,题目中特别指明的,限定为题目中评测点所指定的内存空间。
Vijos 支持且仅支持标准输入输出(控制台输入输出,屏幕输入输出,STD I/O),不支持文件输入输出。
有“成绩取消”字样则说明管理员手动标记此记录为取消,可能违反了服务条款,比如代码被发现与其他用户的代码十分相似。
可能有以下情况:
- 1. 递交时选错了编程语言
- 2. Java 的主类名没有使用 "Main"
- 3. 对于 C/C++:见下
- 4. 一般性的编译错误
对 C/C++ 选手的特别提醒:
- 1. __int64 在 GNU C++ 中应写成 long long 类型
- 2. main() 返回值必须定义为 int ,而不是 void
- 3. for 语句中的指标变量 i 将会在如"for (int i = 0...) {...}"语句之后变为无效
- 4. itoa 不是一个通用 ANSI 函数(标准 C/C++ 中无此函数)
- 5. printf 中使用 %lf 格式是不正确的
我们精心挑选了一些题目组成了训练计划。单击导航栏的“训练”即可进入!
按照赛制不同,有不同的递交、排名规则。
OI 赛制所有题目均以最后一次递交为准,特别地,请避免编译错误。
OI 赛制排名规则为:总分高的排在前面,总分相等则排名相同。
ACM/ICPC 赛制所有题目递交后立即评测,以是否通过为准。
ACM/ICPC 赛制排名规则为:通过题目数多的排在前面,通过题目数相同的做题耗时(含罚时)少的排在前。
时间与空间限制以题目说明为准,默认限制参见{{ _('Limitations') }}。
通过率的影响极其恶劣,现在 Vijos 不提供也不承认通过率。
Vijos RP 分为固定 RP 与浮动 RP ,固定 RP 可由活动、比赛等的奖励获得,浮动 RP 由一般性通过题目获得。
浮动 RP 是一个动态的数值,每个用户在每道题上获得的 RP 都不一样,并且未来也不固定(即浮动之意)。
每道题的浮动 RP 由该题通过总人数与该用户通过此题的名次计算得来。
Vijos 中题目的难度,根据递交数、通过率以及每个递交的递交时间和评测结果,通过算法计算得出。
因此,请注意以下几点:
我们只接受后缀名为zip的数据包上传,必须包含以下内容:
- - Config.ini: 题目配置文件
- + Input (目录): 放置所有标准测试输入文件
- |- input0.txt
- |- input1.txt
- |- ...
- + Output (目录): 放置所有标准测试输出文件
- |- output0.txt
- |- output1.txt
- |- ...
Config.ini格式
第一行包含一个整数n,表示总共有n组数据(即Input目录中文件总数等于Output目录中文件总数等于n);
接下来n行,第k行代表第k个测试点,格式为:
[输入文件名]|[输出文件名]|[时限(单位为秒)]|[得分]|[内存限制(单位为KiB)]
其中,输入和输出文件名为 Input 或者 Output 目录中的文件名(不包含Input或者Output目录),且所有数据点得分之和必须为100,如:
input0.txt|output0.txt|1|10|
如果您无法登录,请仔细想想,是不是用户名记错了。比如,自己原本想要注册的用户名已经被注册,所以使用了一个带有前和/或后缀的用户名。
如果您确信您的账号被盗或者忘记了账号和/或密码,请及时{{ _('Reset Password or Find Username') }}。