0%

lemon 使用指南

本文采用的是 LemonLime,lemon.0.3.2.1。

lemon 介绍

优势:

lemon 是一款离线进行 OI 赛制选手代码评测的软件。

相较于 OJ,可以为 OI 培训机构/学校教练提供更加真实的 OI 赛制比赛环境。

可以实现让选手完全地断网写代码,并且快速地测评选手的代码,得出选手各题的得分。

劣势:

诸如 lemon 的本地评测工具一个极大的缺陷是“需要本地测试数据”。所以除非是数据公开的赛题,否则就需要自己造数据甚至自己出题。

感觉不适合小型机构/弱校使用。

应该更适合校内集训互测或者教培模拟赛使用。

lemon 使用

打开 lemon 界面如下图:

选择新建比赛:

点击 OK。

在目标目录下会生成 test 文件夹。

并且其目录下拥有三个子文件

  • data 文件夹(用于存储题目测试数据)
  • source 文件夹(用于存储选手代码)
  • test.cdf 比赛文件(用于在“添加”比赛功能,“添加比赛”添加的就是这个文件)

添加题目:

在 data 文件下第一个子目录新建题目文件夹,用题目名称作为文件名。

在题目文件夹子目录下存放测试点,用 .in/.out 文件按序号一一对应存放。

返回 lemon,选择控制,自动添加试题。

lemon 会自动识别对应目录的题目。

可以设置试题分值、时间限制、空间限制。

点击 OK 进入题目配置界面:

一般不需要进行调整。

  • 源程序名称不要带扩展名。
  • 若勾选“在子文件夹中寻找”,选手目录需要为每个题单独建一个以源文件命名的文件夹。将源程序放在文件夹内;否则只需要将源程序放在选手目录下即可。
  • 采用文件读写不用勾选定向到标准输入/输出。

添加选手:

以勾选“在子文件中寻找”为例。

在 sources 子目录下新建以“选手名”命名的文件夹:

在“选手名”文件夹目录下新建以“源程序名”命名的文件夹:

在“源程序名”命名的文件夹下放入源程序文件。

以 A+B 为例,源程序示例如下:

选手代码要求采用 freopen 进行文件输入输出。

评测题目:

返回 lemon,选择“选手”进入“选手”页面:

点击刷新,lemon 会自动添加选手。

点击测试全部,进行测试:

注意:

测试题目时,可能需要关闭本地杀毒软件。否则可能会出现各种超时错误(编译超时,运行超时)。

笔者猜测大概是 lemon 需要访问以管理员权限才能访问的 Windows 文件,开了杀毒软件会进行拦截。

后续添加选手时,进行刷新即可。

其它:

若对其它设置有需求,可以在设置中自行更改:

还可以在“帮助”,“指南”,“用户手册”中查看更多详细信息。