二.传统题配置
1.数据
对于传统题,上传的×.zip数据包应当包括这些内容:
题目配置文件
测试数据
额外测试数据(包括题面中所给的测试样例)
(开启 hack)数据检验器
(开启 hack)标准程序
2.题目配置文件
题目配置文件应当命名为problem.conf。这是一份配置的样例:
[n_tests 10
n_ex_tests 1
n_sample_tests 1
input_pre www
input_suf in
output_pre www
output_suf out
time_limit 1
memory_limit 512
output_limit 64
use_builtin_judger on
use_builtin_checker ncmp ]
测试点
[ n_tests 10
n_ex_tests 1
n_sample_tests 1]
这三行分别代表标准测试点、额外测试点和测试样例的数量。其中,额外测试点的前几个一定是测试样例,所以你必须把题目中给出的测试样例放到额外测试点当中。
UOJ 的 extra test 是指在 AC 的情况下会测额外数据,如果某个额外数据通不过会被倒扣3分。
[input_pre www
input_suf in
output_pre www
output_suf out ]
这四行分别指明了每个测试点输入文件的前缀、扩展名、输出文件的前缀、扩展名。
标准测试点的文件名应当形如:www1.in、www1.out、www2.in、www2.out……
额外测试点的文件名应当形如:ex_www1.in、ex_www1.out、ex_www2.in、ex_www2.out……
限制
time_limit 1
memory_limit 512
output_limit 64
这三行配置了评测时对选手程序的时间限制、内存空间限制和输出限制。
时间限制的单位为秒,不能为小数。内存空间和输出限制的单位为 MB。
校验器(checker)
校验器用来检查选手程序的输出是否正确。
use_builtin_judger on
use_builtin_checker ncmp
第一行表示使用内建校验器,第二行表示使用的校验器类型。testlib 提供了很多奇奇怪怪的校验器。