方法1:编写spj.c/cpp/cc,放置在测试数据目录下随测试数据一同上传(推荐),spj的返回值(0到100之间整数)表示该测试点得分。
方法2:使用Cena格式的评测插件cena.c/cpp/cc,放置在测试数据目录下随测试数据一同上传。
方法3:使用Lemon格式的评测插件lemon.c/cpp/cc,放置在测试数据目录下随测试数据一同上传。
所有判定的执行都是自动的。
例如,对题目BPlusA使用评测插件:
// C风格 #include <stdio.h> int main(int argc, char* argv[]) { FILE *fin = fopen(argv[1],"r");//题目的读入文件 FILE *fout = fopen(argv[2],"r");//选手的输出文件 FILE *fans = fopen(argv[3],"r");//题目的输出文件 int n, a, b; fscanf(fin, "%d", &n); fscanf(fout, "%d%d", &a, &b); if(a + b != n) return 0; fclose(fin); fclose(fout); fclose(fans); return 100; }
// C++风格 #include <fstream>using namespace std; int main(int argc, char* argv[]) { ifstream fin(argv[1]);//题目的读入文件 ifstream fout(argv[2]);//选手的输出文件 ifstream fans(argv[3]);//题目的输出文件 int n, a, b; fin >> n; fout >> a >> b; if(a + b != n) return 0; fin.close(); fout.close(); fans.close(); return 100; }
关于 编写评测插件 的讨论 | ||||
---|---|---|---|---|
第一
2024-09-12 19:43:44
1楼
|