这几天组织了几次省选模拟赛,遇到了答案提交类的题目和交互式的题目。我一直使用Cena进行评测,现在希望把这两种类型的题目方便地加入Cena的评测结果中。交互式的题目使用Cena评测非常简单,只需要在库函数运行时输出一个以得分情况为内容的文件作为选手输出即可(http://www.matrix67.com/blog/article.asp?id=179)。但答案提交类的题目却遇到了麻烦,因为Cena肯定不允许程序访问外部文件(因此不能另写程序读入提交的答案并作为选手输出文件输出),而每个选手提交的答案文件所在位置又不确定(不知道文件夹名),不能把这些文件加入Cena的评测中。后来,我想到了这样一个解决方案。我可以用程序生成一个程序来生成选手输出文件(真他妈的绕口)。
假设测试点共10个,所有的输入文件名为name.?.in,输出文件名为name.?.out,其中?取1到10中的数。那么下列程序可以生成一个printer.pas作为选手程序。以下程序将选手提交的答案写入pas源代码“printer.pas”中,它可以根据输入文件恰当地进行输出操作。“printer”将被设置为该题的源程序文件名。
评测时所用的输入文件只有一个整数,标识这是第几个测试点。程序的输出(即选手提交的答案)可以和标准输出比较或另写Checker评分。program print;
const
fname='name';
var
i:integer;
st:string;
procedure init;
begin
writeln('program printer;');
writeln('var n:integer;');
writeln;
writeln('begin');
writeln(' assign(input,'+#39+fname+'.in'+#39+');');
writeln(' reset(input);');
writeln(' readln(n);');
writeln(' close(input);');
writeln(' assign(output,'+#39+fname+'.out'+#39+');');
writeln(' rewrite(output);');
writeln;
end;
begin
assign(output,'printer.pas');
rewrite(output);
init;
for i:=1 to 10 do
begin
str(i,st);
{$i-}
assign(input,'name.'+st+'.out');
reset(input);
{$i+}
if ioresult<>0 then continue;
writeln(' if n=',i,' then begin');
repeat
readln(st);
writeln(' writeln(',#39,st,#39,');');
until eof;
writeln(' end;');
writeln;
end;
writeln(' close(output);');
writeln('end.');
close(output);
end.
采取一些工具软件可以在不同的选手文件夹下批处理运行该程序。
过几天我可能又要思考如何评测循环赛类型的题目了。
做人要厚道
转贴请注明出处
相关推荐
Cena 0.8.2.zip(cena评测软件)
Cena是一个离线代码评测软件,该软件可以用来测评C++、C语言和Pascal语言,目前的诸多竞赛教练员为学生们测评的时候基本采用的都是这个免费的测试系统
求帮助求帮助
没有
cena评测系统使用说明
cena是信息学奥赛常用评测软件。本文教你如何在windows 10 x64系统上使用cena评测系统。很多坑我已经踩过了。
Lemon OA第4篇:常用功能
OA,Office Automation的简写,中文意思办公自动化,不同的人有不同的见解,可以简单的理解为网络化办公,高效、协同是其显著的特点,如今正在朝着智能的方向发展 平时不擅长文字,写出来几句话这么生硬,还是言归正传。OA除了核心的一些功能之外,还需具备一些常用的功能。第3篇:核心功能已经介绍了Lemon OA的核心功能,但是并不代表OA全部的核心功能,因为OA是一个很大的领域,不同行业...
cena c++题评测
cena c++题评测!
告别手动打卡:逍遥模拟器+宥马运动自动跑步脚本配置全流程
本文详细介绍了如何利用逍遥模拟器和自动化脚本实现宥马运动的自动跑步功能,告别手动打卡的繁琐。从环境准备、脚本部署到定位配置和智能调度,全流程指导用户完成自动化设置,提升效率并确保运动数据的真实性。
cena评测系统:自定义校验器(自定义评测插件编写)
Cena评测系统,最受欢迎的信息学竞赛离线评测系统。 它是开放源程序的信息学竞赛评测系统,能满足大多数程序设计竞赛的测评需求。 特色功能: 通过局域网自动收取选手程序。 高效率的数据文件配置工具。 自动选用对应的编译器来编译选手程序,也能使用解释器或直接评测可执行文件。 能准确测出选手程序的运行时间和内存使用量,并可加入对运行时间和内存使用的限制。 自动比较选手程序的输出...
Flutter加载本地HTML的优雅解决方案:轻松实现富文本展示
通过以上步骤,我们实现了Flutter加载本地HTML的完整流程,并简单介绍了如何通过WebView与HTML页面进行交互。HTML文件作为一种灵活、易维护的富文本展示方式,能有效提升Flutter应用的内容呈现能力。这种方法在展示新闻、资讯或帮助文档等内容时非常有用,能够让开发者灵活调整内容的样式和排版。希望这篇文章能对你在Flutter开发中的HTML加载有所帮助!
学习一个Cena和Lemon的SPJ
对于当正确的输出结果不唯一的时候,我们就需要使用自定义校验器们,也就是我们常说的Special Judge。一般来说我们需要自己编写Special Judge的判断程序,不同的评测系统对于Special Judge的要求也不一样,下面就来谈一谈Cena和Lemon的Special Judge。Cena首先,Cena的帮助里面是这样说的:3.2.2 自定义校验器说明 获取必要的信息 待测的测试点的
Elsevier投稿别再踩坑了!手把手教你搞定LaTeX模板和所有附件(附避坑清单)
本文详细解析Elsevier投稿全流程中的关键环节,特别是LaTeX模板的使用和系统提交的常见问题。从必备文件准备到LaTeX模板适配,再到投稿系统操作指南,提供全面的避坑清单和实用技巧,帮助科研工作者高效完成投稿,避免因格式错误或文件遗漏导致的退稿风险。
ADB详细(从下载安装到灵活运用)
ADB(Android Debug Bridge)是一种允许模拟器或已连接的 Android 设备进行通信的命令行工具,它可为各种设备操作提供便利,如安装和调试应用,并提供对 Unix shell(可用来在模拟器或连接的设备上运行各种命令)的访问。可以在Android SDK/platform-tools中找到 adb 工具或下载ADB Kits。
lemon/cena C++ SPJ姿势
终于看懂了百度百科,(⊙o⊙)… 存一份代码#include <bits/stdc++.h> //cena #define LL long long using namespace std; struct P{int x,y;}p[1005]; LL dis[1005][1005]; LL f(int x) {return (LL)x*(LL)x;} bool use[1005]; FILE
MC1496乘法器AM调制电路搭建全流程(附Multisim 14.0仿真文件)
本文提供了基于MC1496乘法器搭建AM调制电路的完整实战指南。针对仿真模型缺失的痛点,详细讲解了从晶体管级手动构建MC1496等效模型,到外围电路设计、调制度参数计算与调节,并在Multisim 14.0中进行仿真验证的全流程。通过深度剖析MC1496内部原理与AM信号调制机制,帮助读者获得从仿真到实践的可控设计与排错能力。
关于如何在Windows下测交互题
这里的交互题指的NOI风格的交互题,即交互库 codeforces风格的交互题...只能自己实现评测插件了 使用Cena,Lemon没有附加文件功能不能评测交互题 在编译选项g++编译命令源文件中加入grader.cpp 在数据包中放xxxx.h和grader.cpp 在题目配置中附加文件里加入grader.cpp和xxxx.h 如果测交互题同时要测传统题,由于cena不能每个题单独配置编译命令...
AIGC时代的必备技能:提示词工程(Prompt Engineering)全面指南
本文主要介绍了AIGC时代的重要技能——提示词工程(Prompt Engineering)。文章首先定义了提示词的概念,强调其作为人类与AI沟通桥梁的重要性,并详细阐述了提示词的功能特性,包括输入、大模型处理和输出三个环节。接着,文章探讨了提示工程的重要性,如提高输出质量、节省资源和时间等。随后,文章深入分析了提示词的基本构成要素,包括指令、上下文、输入数据和输出指示符,并提出了提示词的五大基本原则:清晰性与具体性、提供充足的上下文、明确任务与目标、考虑受众和迭代思维。最后,文章介绍了提示词的七大常见技巧
Android性能分析——hprof文件分析(一)
hprof 文件是 Java 堆转储文件(Heap Dump File)的标准格式,用于保存 Java 虚拟机(JVM)在某个时间点的内存快照。这种文件对于分析内存泄漏、内存使用情况和对象分配模式非常有用。
手写“cena”
有些时候我们手中有一些数据来检验自己的程序是否正确,但是数据很多很大,手动测试很麻烦,还好有cena,lemon啥的。 但是如果没有呢? 或者你想装一波B呢? 手写一个咯~教程: step1: 用你的cpp文件生成exe文件,并把你的exe文件和测试数据放在一个目录下。像这样: 你一定要保证你的所有输入文件和输出文件有相同的前缀名,并且后面的数字是有序的。step2: 建立一个tx
对称式目镜设计实例
对称式目镜设计实例
自动AC机
有更新 注意不是AC自动机! AC自动机是种高级算法,我所介绍的是种作弊方法。 这是一种非常玄学的东西,是用Pascal语言写的用来卡评测机的东西,卡软件BUG,以此来作弊使自己“AC”。 不过只能卡Cena,其他的力有未逮。 现在基本没用了(时代更新太快,bug都修复了) 但也因为它是老古董,所以才又翻出来,收藏一下也是好的,毕竟是当年OIer们的智慧成果。 如果要实际应用的...
蓝牙模块HM-10手册
蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。
精雕软件(JDpaint) 5.5 绿色版
精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版
简单的网上试题自动评测---试题 相关代码
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.ge...
STM32F407中文手册
STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。
lemon 信息学 奥林匹克 竞赛 测评系统 使用方法 c++11 cena 已经用的少了
lemon 信息学 竞赛 测评系统 使用方法 软件安装很方便,解压即可。 1)编译器设置 自己安装编译器,需要支持 gcc g++ 4.8.4 (建议 gcc.gnu.org 下载,支持bits/stdc++.h) 如果是64位编译器,目前几乎mingw都是64位 在编译选项中 增加 -m32 参数,也就是 -m32 -o %s %s.* ,如果需要支持c++11,标准,比如for...
廖雪峰Python教程[完整版]
廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白
IMA+DeepSeekR1+本地知识库撰写NOIP2008普及组T2【排座椅】题解
【摘要】(DeepSeek-R1生成):本题需在教室行列中设置通道,最大化分隔吵闹同学对。采用贪心策略:统计每行/列可分隔的对数,优先选最高者。横向选K条,纵向选L条,最终按编号升序输出。代码通过结构体记录行/列编号及对数,排序后筛选并排序结果,时间复杂度O(M log M + N log N)。
- > 听学姐讲那过去的故事——打代码的小女孩
童话故事 不知道大家有没有看过 天冷极了,下着雪,又快黑了。这是一年的最后一天——大年夜。在这又冷又黑的晚上,一个乖巧的小女孩在机房里调试程序。她从家里出来的时候还穿着一件外套,但是有什么用呢?那是一双很大的外套——那么大,不知是哪一年买的。为了敲代码的时候更方便,她把它脱掉了。同学们常常嘲笑她,因为外套上留下了她梦中写下的伪代码的痕迹。 小女孩只好一个人在机房里调试程序,机...
Conflux人物志 | 柠檬树上柠檬果,柠檬树下他和他
又到了大家喜爱的“快问快答”时间。为了督促各位主人公集中注意力专心答题,本期我们设置了一个“惩罚机制”。答题时间超过90秒,就要接受我们的“柠檬惩罚”!烤仔特地买来的进口...
WC总结
去了人生中第一次全国WC,在四川绵阳南山中学举行,去了这么一次,感受颇多,不忍心白白地让时间流逝,于是写篇随笔记录一下。 全程,共计8天。 【第1天】 签到,拿餐票,看了看讲义,觉得要狗带。 开营仪式,表演技艺高超【这也和后面的“选手文艺交流活动”形成了对比】 第一次吃了南山中学的晚餐,美味啊! 晚上,回宿舍,很积极地拿出我的笔记本,调试一道树链剖分裸题,但是不停WA……于是交了个hz...
【算法学习笔记/杂项】提交答案型题目
title : 提交答案型题目 date : 2022-4-28 tags : ACM,杂项 author : LINNO 提交答案型题目 提交答案型题目相较于传统题目来的特点是,每个测试点的分都可以运用一些奇技淫巧来骗到,每个测试点通常有部分分可以骗,往往可以不涉及复杂的算法,但是代码量可能比较大(一道题可以分成10道题来写)。 手算 在输入文件中特别小的数据,如果可以手算解决,可以直接手算打表骗分。 搜索 假设一场比赛5个小时都在运行爆搜程序,那么即便写不出正解,也可能求出不少打表结果。 非完美程序.
184



被折叠的 条评论
为什么被折叠?



