-
Notifications
You must be signed in to change notification settings - Fork 12
CLI Problem
NAME:
Deer Executor - problem workdir manager
USAGE:
deer-executor problem command [command options] [arguments...]
COMMANDS:
build, b compile binary source codes
validate, v run validator cases and test case input
generate, gen, g generate test case's input/output
checker, c run checker cases
help, h Shows a list of commands or help for one command
OPTIONS:
--help, -h show help (default: false)
-
build构建二进制程序 -
generate生成测试数据 -
validate运行Testlib的validator -
checker运行特判检查器
**注意:**为了配合打包功能,并且规范文件存放,默认的工作目录是configs_file所在的目录。即work_dir := path.Dir(configs_file)
在本地调试题目的时候,如果涉及到使用特殊评测,必须通过这个命令去编译对应的特判程序代码。这个命令会根据题目配置信息,自动构建checker(包括交互)、validator和generator等程序并存储到 <workdir>/bin下。
顺便一提,这些二进制程序是适应当前操作系统环境编译的,故不会被打包到题目里。
NAME:
Deer Executor - compile binary source codes
USAGE:
Deer Executor problem build [command options] configs_file
OPTIONS:
--library value, -l value library root for special judge, contains "testlib.h" and "bits/stdc++.h" etc. (default: "./lib")
--help, -h show help (default: false)
configs_file 题目的配置文件所在路径
-
--library设置编译时所需库文件的位置,默认当前程序所在位置下./lib目录。如果需要testlib支持请把testlib.h放到这个目录下。(bits/stdc++.h是为MacOS下能正确编译有这个引用的C++代码而设置的,你可以自行选择是否需要这个文件)
NAME:
Deer Executor - generate test case's input/output
USAGE:
deer-executor problem generate [command options] configs_file
OPTIONS:
--silence, -s silence mode (default: false)
--with-answer generate answer (default: false)
--answer value answer case index. (default: 0)
--case value, -c value case index, -1 means all. when module type set 'all',it would't work. (dfault: -1)
--help, -h show help (default: false)
generate 方法用于自动生成数据。和codeforces的机制不同,deer-executor是基于文件的方式运行评测的,故需要预先生成对应的测试数据输入、输出文件。当然,这里也提供了运行generator的支持,你可以编写对应的配置来启用它。
Generator,即数据生成器。当数据很大,手造会累死的时候,我们就需要它来帮助我们自动造数据。
configs_file 题目的配置文件所在路径
-
--silence静默模式。这是给OJ使用的,此模式下不会有输出和交互,运行结果将自动保存在题目配置文件中 -
--with-answer默认情况下只会运行generator来获取测试数据输入。如果有设置对应的答案代码,则可以开启这个参数用于生成测试数据的输出。 -
--answer value设置使用哪个答案代码进行编译并生成测试数据输出,默认是第一组。(仅在--with-answer选项启用时有效) -
--case value可以设置单独运行哪组数据,值为对应数组下标,-1表示运行所有。(通常这个功能是给OJ使用的)
NAME:
Deer Executor - run validator cases and test case input
USAGE:
deer-executor problem validate [command options] configs_file
OPTIONS:
--silence, -s silence mode (default: false)
--type value, -t value module type: validator_cases|test_cases|all (default: "all")
--case value, -c value case index, -1 means all. when module type set 'all',it would't work. (dfault: -1)
--help, -h show help (default: false)
validate 方法提供了运行validator的支持,你可以选择验证相关的数据并将验证结果写入到题目配置信息中
Validator(中文:校验器)用于检验造好的数据的合法性。当造好一道题的数据,又担心数据不合法(不符合题目的限制条件:上溢、图不连通、不是树……)时,出题者通常会借助 validator 来检查。
configs_file 题目的配置文件所在路径
-
--silence静默模式。这是给OJ使用的,此模式下不会有输出和交互,运行结果将自动保存在题目配置文件中 -
--type value选择测试模块。你可以选择仅运行测试数据test_cases,或者仅运行手动输入的数据validator_cases(参考codeforces-polygon的validator tests),又或者是二者都运行all -
--case value可以设置单独运行哪组数据,值为对应数组下标,-1表示运行所有。(通常这个功能是给OJ使用的)
NAME:
Deer Executor - run checker cases
USAGE:
deer-executor problem checker [command options] configs_file
OPTIONS:
--silence, -s silence mode (default: false)
--answer value, -a value answer case index. (default: 0)
--case value, -c value case index, -1 means all. when module type set 'all',it would't work. default: -1)
--help, -h show help (default: false)
checker 方法用于执行特殊评测,这个一般是手打的数据(参考codeforces-polygon的checker tests)
Checker,即 Special Judge ,用于检验答案是否合法。使用 Testlib 可以让我们免去检验许多东西,使编写简单许多。
configs_file 题目的配置文件所在路径
-
--silence静默模式。这是给OJ使用的,此模式下不会有输出和交互,运行结果将自动保存在题目配置文件中 -
--answer value设置使用哪个答案代码进行编译并生成测试数据输出,默认是第一组。 -
--case value可以设置单独运行哪组数据,值为对应数组下标,-1表示运行所有。(通常这个功能是给OJ使用的)
© 2018 - 2021 LanceLRQ,All rights reserved.