丐版 SelfEval:NOI Linux 考试环境下实用的 Arbiter 不完全使用指南
M1saka16I72 · · 科技·工程
前言
更可爱的阅读体验
明天省选,基本上也就是 OI 生涯的最后一战了,写点实用的东西造福一下后人(
简介
Arbiter 是一款内置在 NOI Linux 中的评测软件,在 OI 考试中可以用来方便地测试大样例和手搓的数据并给出分数,可以在不提供 SelfEval 的情况下作为平替。
本文仅包含 OI 考场上较简单实用的 Arbiter 操作,可能并未涵盖软件的所有功能,更多功能可以自行摸索。
用户界面 & 配置指南
首先在左下角菜单中找到 Arbiter_local 并打开。
进入软件后的界面,选择 new 后可以在文件管理器中选择一个文件夹,在这个文件夹中新建比赛文件;选择 open 可以在文件管理器中选择一个 setup.cfg
文件,代表一个已经被创建的比赛。
创建好比赛后,可以进行题目配置。首先右键左侧空白区域,点击 添加考试
,然后再右键 第一场--day1
,点击 添加试题
,就可以编辑被创建的题目了,可以编辑的设置包括题目分值、测试点数量、编译选项、评测比较方式等。注意第三栏的 比较方式
默认是未被选定的,会导致题目无法评测,需要手动选择比较方式,例如上面的截图中选择的是整数比较。
配置好试题后,可以在 试题评测
界面中添加选手,进行评测。点击 添加选手
,在弹出窗口后输入姓名(随意)和编号(应当是地区缩写-数字编号的形式,后面会用到),点击确定即可。
可以添加多个选手,用于拿正解与暴力 / 部分分代码对拍。
选手添加完毕后,可以点击选手姓名一栏的位置选中选手,再选择右下角 评测选定选手
后指定题目进行评测。注意要先在左上角的文本框中填上要评测的是第 1 场,默认是不存在的第 0 场。
文件系统 & 选手代码/评测数据设置
在我们选定文件夹、新建比赛之后,被选定的文件夹的结构如图所示。这里介绍一些本人知道的文件夹的用途。
-
evaldata:放置评测数据。无需创建子文件夹,直接将所有题目的所有数据一股脑扔到这里面即可。
-
players:放置选手代码。存放的目录格式如下:
/players/day1/BJ-001/problem/problem.cpp
,代表编号为BJ-001
的选手在day1
这场比赛中题目名为problem
的题目的代码。 -
result:放置评测结果文件。在运行完对
day1
这场比赛中选手BJ-001
的评测后,/result/day1/BJ-001
会出现文件BJ-001.result
,代表评测结果。
注意事项
-
Arbiter 不太稳定,有概率会闪退。所以在配置的时候要勤按
Ctrl+S
,存储配置进度,避免浪费时间。 -
软件内无法设置栈空间大小,可能会莫名出现 MLE 的评测结果。解决方法是先在终端里使用
ulimit -s
提前设置栈空间大小,然后再使用终端运行 arbiter-local。
祝大家在省选中取得理想的成绩!