UOJ的special judge写法
UOJ的special judge写法
- 配置步骤
- 修改problem.conf
- chk.cpp
配置步骤
修改problem.conf
和传统题配置相比,spj的题区别就在于自定义了checker。
这里我们需要先把problem.conf中的use_builtin_checker
一行删去。
chk.cpp
在数据文件夹下新进一个文件命名为chk.cpp
。
UOJ的cheker使用testlib,下面是A+B
的checker:
#include "testlib.h"int main(int argc, char* argv[])
{registerTestlibCmd(argc, argv);int pans,jans;pans=ouf.readInt(); // 读取选手输出jans=ans.readInt(); // 读取答案if (pans == jans)quitf(_ok, "Correct.");elsequitf(_wa, "WA! expect=%d recieve=%d", jans, pans);
}
在调用registerTestlibCmd之后,我们可以使用下面的三个流:
inf
: 输入数据ouf
: 选手输出ans
: 标准输出
从流中读取数据的方式,和【数据检验器】一致。
如果程序AC或者爆零,您可以使用quitf()
。但是如果您想给选手部分分,请使用下面的代码:
quitp(ceil(100.0 * p / a) / 100, "QAQ");
这将会给选手p分。
chk.cpp中不能出现中文!
UOJ的special judge写法相关推荐
- Special Judge(特判程序)在OnlineJudge(在线判题系统)中的使用方法
引言 最近搭了一个OnlineJudge,在一些比赛中,为了避免选手骗过测试,所以一个比较完善的OJ测试必须加上Special Judge 例如:题目要求:求a+b的值 测试用例: 输入1 2 输出: ...
- Special Judge Ⅲ(这道题考的就是出栈序列判定_关键代码不差什么)
Description Q:什么是 Special Judge,Special Judge 的题目有什么不同? A:一个题目可以接受多种正确方案,即有多组解的时候,题目就必须被 Special Jud ...
- 【教程】如何正确的写一个Lemon/Cena的SPJ(special judge)
Special Judge:当正确的输出结果不唯一的时候需要的自定义校验器 首先有个框架 #include<fstream> ifstream fin,fout,fstd ofstream ...
- HUSTOJ特判程序Special Judge使用方法整理
2021.08.12更新:最新优化的编写方法请参见https://blog.csdn.net/winter2121/article/details/104901188 Special Judge 通常 ...
- Lemon LemonLime 中 SPJ Special Judge 使用 实践 入门 a
精度需要SPJ 入门: 题目,以整数形式给定圆的半径,输出该圆的周长,该圆的面积. 比赛目录如下: 标准输入输出数据如下: circle1.in 1 circle1.ans 6.283185 3.14 ...
- special judge
//special judge01 通过特定程序 判断 代码输出是否正确 而不是只比对 输出是否和标准输出一致 02 应用场景: 01 题目存在多组解 02 避免选手利用 黑箱测试 得分03 eg. ...
- Sicily 2012 King[Special judge] (不是水题胜似水题)
题目的意思是:在这个柔弱强食的年代,能打架才是王道,打架最强才能称霸天下 给你1000个人 如果A打赢B,那么A可以傲视B 如果A打赢B,B能打赢C,那么A可以傲视C 问你谁能傲视群雄? 这个题很容易 ...
- OJ(Online Judge)系统汇总
OJ百度百科 在线判题系统_百度百科 ***Openjudge和Poj 北大OJ(英文),经常服务器坏, Welcome To PKU JudgeOnline 备用网站 OpenJudge - NOI ...
- 第五届合肥工业大学宣城校区程序设计大赛题解
问题 A: 小问题 时间限制: 1 Sec 内存限制: 128 MB Special Judge 题目描述 林喵喵特别喜欢解决女孩子们提出的问题. 于是, 有一天殷老师问了林喵喵一个小问题. 给出 ...
最新文章
- Android 编译源码 注意事项
- varnish---反向代理web加速缓存服务器和CDN的推送
- 【Python】Github上125k+Star的Python算法资料
- 秘密开发一年多,解密奥运史上首个数字云徽章
- Serializable序列化
- 图解读写锁:pthead_rwlock_t
- 第一百五十天 how can I坚持
- c# 遍历文件夹深度_C#.NET中遍历指定目录下的文件(及所有子目录及子目录里更深层目录里的文件)...
- spark入门_[大数据之Spark]——快速入门
- swagger 上传文件 参数_如何使用Swagger上传文件
- Linux下测试sdio,浅析Linux下sdio接口对sd卡硬件检测流程
- arm linux开机第一屏,小白求助大神T1刷机提示成功,但开机卡在斐讯白屏界面。...
- Ubuntu 16.04 安装并创建快捷图标 XMind
- 微信红包雨怎么抢_微信红包雨怎么发? 微信红包雨的操作方法?
- Spring Boot 从入门到精通(一)HelloWorld(构建项目,热部署,测试)
- 手写 React 第 2 节 - 初探 React 实现机制
- 如何取消计算机中的文件夹加密文件,文件夹加密码怎么设置怎么解除
- 苹果造车欲用中国电池,前提是在美国建厂?比亚迪、宁德时代正与其谈判
- serv-u ftp server是什么?如何利用花生壳搭建ftp服务器?
- 用手机在家做韩剧剪辑,无需露脸,一周1300
热门文章
- 突破 11%,Statcounter 数据显示微软 Edge 已稳坐第二大桌面浏览器
- 腰间盘突出怎么解决?
- bugku(md5 collision(NUPT_CTF))
- 在Fragment中我想点击按钮然后关闭当前的Fragment返回上一个Fragment该如何实现。
- tftp服务器传送文件,3.64 tftp(传输文件)
- php传智视频,PHP视频教学之Mysql视频教学下载传智播客-韩忠康
- java中的图形界面如何在JFrame中添加背景色及背景图片
- 生活杂记-显示器尺寸
- Apollo配置加解密-基于Apollo—client的封装支持配置动态解密的巧思与探索
- PUEG打开服务器维护,物业管理服务程序tanopueg.doc