-
Notifications
You must be signed in to change notification settings - Fork 12
Folder
lanrongqi edited this page Dec 24, 2020
·
2 revisions
题目的工作目录,以配置文件所在的目录为根目录。推荐你按照以下格式建立题目,也可以用init命令直接生成:
.
├── answers # 存放题目的参考答案代码
│ └── answer.c
│ └── ...
├── bin # 存放题目的二进制编译文件,无须手动存放内容
│ ├── checker
│ ├── g_echo
│ └── validator
├── cases # 存放题目的测试数据,判题机规定每个测试样例都必须有in和out文件
│ ├── 0.in
│ ├── 0.out
├── codes # 存放题目的工作源代码,比如testlib的chekcer、interactor和validator等
│ ├── checker.cpp
│ └── validator.cpp
├── generators # 存放testlib的generator源代码
│ └── echo.cpp
└── problem.json # 题目的配置文件
.
├── client
│ ├── generate.go # generate命令入口文件
│ ├── package.go # package命令入口文件
│ ├── packmgr # 提供problem和package命令的代码
│ │ ├── checker.go
│ │ ├── compile.go
│ │ ├── generator.go
│ │ ├── package.go
│ │ └── validator.go
│ ├── problem.go # problem命令入口文件
│ ├── run # 提供run命令的代码
│ │ ├── benchmark.go
│ │ ├── common.go
│ │ ├── judge.go
│ │ └── main.go
│ ├── run.go # run命令入口文件
│ └── test.go
├── data
│ ├── codes # 测试用的被测代码
│ │ ├── APlusB
│ │ ├── WJ2012
│ │ ├── WJ2018
│ │ └── hello.c
│ ├── problems # 题目配置
│ │ ├── APlusB
│ │ ├── APlusB2
│ │ ├── WJ2012
│ │ └── WJ2018
├── executor # 判题内核代码
│ ├── analysis.go # 进程分析
│ ├── checker.go # 答案比对
│ ├── compile.go # 编译代码
│ ├── dispatch.go # 评测调度
│ ├── runtime.go # 进程调度
│ ├── structs.go
│ └── utils.go
├── lib # lib文件夹,存放testlib
│ ├── bits
│ │ └── stdc++.h
│ └── testlib.h
│ └── example # 生成题目数据的模板,题包文件
│ │ └── a+b
├── main.go # 主程序入口
└── test # 单元测试
├── a_plus_b_test.go
├── language_test.go
├── util.go
├── wj2012_test.go
└── wj2018_test.go
© 2018 - 2021 LanceLRQ,All rights reserved.