NOIP2009常见技术问题解答(更新版)2009-11-05 10:00:00阅读量:24947

 
 


NOIP2009复赛将于11月21日在各省举行,针对多数省份提出的一些关于NOIP2009复赛的问题我们做了汇总,仅供参考,如有问题请联系:NOI Linux系统和Arbiter单机版的技术支持人员翟金标zhaijinbiao@nlsde.buaa.edu.cn


一.与NOI Linux系统相关的问题


1.安装NOI Linux时是否必须使用整个硬盘?NOI Linux能否支持双操作系统,安装过程中是否需要进行特别的设置?
安装NOI Linux操作系统时,用户可以选择使用整块硬盘,也可以指定使用硬盘上的一块分区。
在已经安装了Windows的计算机上,可以在保留Windows系统的条件下安装NOI Linux系统。在安装的过程中,只需在分区一步选择“自动分区(使用剩余的可用空间)”即可。


2.如何以硬盘启动的方式安装NOI Linux?
 采用硬盘启动的方式安装NOI Linux需要进行的操作比较复杂,不建议用户采用。如有特殊情况必须采用硬盘启动的方式安装,可参考《Ubuntu硬盘安装与配置详细图解》一文,网址为http://blog.chinaunix.net/u1/36747/showart_370207.html


3.在NOI Linux系统中建立好文件夹或文件后,无法重命名怎么办?
 解决办法是关闭系统中的SCIM中文输入法,操作方法如下:用鼠标右键点击屏幕右上方的键盘图标,然后在显示的菜单中使用鼠标左键选择退出。


4.使用虚拟机安装NOI Linux进行比赛或者进行评测可以吗?
 可以。科学委员会目前正在对各种虚拟机软件进行调研,在调研完毕之后将会对使用虚拟机安装NOI Linux的做法作出统一的规定。


5.NOI 网站中提供的NOI Linux中是否集成了GUIDE的全部安装文件?
 NOI Linux系统中已经集成了Arbiter(Single)、GUIDE、FreePascal、GCC/G++。在系统安装完毕之后,上述软件即可正常使用。


6.启动Lazarus时系统给出了如下提示:“The Free Pascal source directory was not found.Some code functions will not work.It is recommended that you install it and set the path Environment->Environment Options->Files”,Lazarus还可以正常使用吗?
 点击确定按钮忽略该提示信息即可,系统中的Lazarus可以正常使用。


7.NOI linux下如何设置安装打印机

 NOI Linux操作系统的内核中已经集成了常见型号打印机的驱动程序。如果系统无法自动识别打印机型号,则需要在打印机厂商网站上下载打印机驱动程序的源代码,并且与NOI Linux系统内核一起编译,方可识别新型号的打印机。对于非专业用户来说,上述操作较为复杂而且容易出错,因此我们推荐采用下述做法完成NOIP比赛成绩的打印:在windows系统下,将ps格式的成绩单文件由Acrobat Professional软件转成pdf格式并且完成打印,或者直接使用GS Viewer打印ps文件。

 

8.安装NOI Linux后,测评示例的学生成绩都为零,是不是还有哪方面的设置(另注在红帽9.0测试还是正常的)

对于Arbiter单机版对样例比赛的评测结果为0的情况,请相关技术人员检查如下三个问题:

1)evaldata下的输入文件、答案文件中的回车为单字节回车。如果输入文件、答案文件是在windows下生成的,则文件中的回车符一般为双字节;在Linux系统下,选手程序的运行结果中的回车符却为单字节。因此将导致插件匹配失败;

2)如果filter目录下不存在用户指定的评测插件,则导致评测失败;

3)在players目录下,目录结构必须为players/day<天数,默认可为1>/<选手编号>/..,例如/players/day1/HI-1对应的是第一场考试、选手HI-1的答案。如果目录结构有误,则系统无法找到选手答案并直接判错。

 此外,附件((点此下载))为一个我们测试过的可用简单样例,可供各省市相关技术人员下载测试。


9.NOI-Linux 1.0.2系统中是否具备收取选手程序的功能,如果有,是哪个软件?如果没有,应该如何收取选手程序呢?NOI指定的评测系统Arbiter,除了单机版外,是否发布最新的网络版?要到哪里下载?

 1)鉴于Arbiter网络版的使用较为复杂,需要操作人员配置网络环境等,因此未在目前公开发行的NOI Linux中集成Arbiter网络版的客户端,亦即目前的系统不提供自动收取选手答案的功能;

2)Arbiter网络版需要在现有NOI Linux系统中重新安装评测客户端和自启动脚本。如果部分省市有使用Arbiter网络版的需要,我们可提供下载和技术指导。


二.Arbiter(Single)评测系统相关的问题


1.在什么地方可以下载Arbiter(Single)评测软件?
 Arbiter(Single)评测软件已经集成在NOI Linux系统中,安装好NOI Linx系统后即可使用此软件。在NOI Linux系统中,Arbiter(Single)的可执行文件保存在/usr/bin目录下,评测系统运行时必需的全部标准评测插件保存在/usr/bin/filter目录下。


2.在windows系统上能安装Arbiter(Single)吗?
 Arbiter(Single)是运行于Linux系统上的软件,目前暂时没有运行于Windows系统上的版本。


3.Arbiter(Single)建立的比赛目录结构的简单说明。
 Arbiter(Single)建立或者使用的比赛目录中:evaldata目录用来存放测试点数据;filter目录用来存放评测插件;players目录用来存放选手答案。如果出现评测结果的成绩全部为0的情况,请参考上述问题一中第八项的回答。


4.正式比赛时,如何知道对于某一道考题使用什么评测方式,评测插件由谁提供?
 在NOIP2009正式比赛的过程中,试题的题面中将会说明各道考题所采用的评测方式。在NOI官方下发的评测数据中将会包含评测各道考题时所要使用的评测插件。


5.使用Arbiter(Single)新建一场比赛时,评测软件没有把标准评测插件自动拷贝到当前比赛目录的filter子目录下。全部标准评测插件保存在/usr/bin/filter目录下,新建比赛时若没有自动拷贝,可手动拷贝全部评测插件到当前比赛目录的filter子目录下。


6.运行Arbiter(Single)评测系统时,在打开的文件浏览对话框中,有些目录显示为乱码。
 因为Arbiter(Single)评测系统中采用的中文编码为GB2312,而系统中默认的中文编码为UTF-8,所以打开的文件浏览对话框中会出现中文乱码的情况。只要保证保存比赛目录的全路径上不出现中文或特殊符号,这种“乱码”的问题不会影响评测的结果。


7.使用Arbiter(Single)评测NOI Linux系统中附带的测试样例,评测结果全部为0。
 请参考上述问题一中第八项的回答。


8.使用Arbiter(Single)评测系统导入选手名单功能时,系统显示结果不正常。
 保存选手名单的文件需要采用csv格式的文件,即选手编号和选手姓名之间用逗号分割。每一行内容的格式如下:“<选手编号>,<选手姓名>”。


9.比赛时下发的评测数据是只有linux格式的,还是windows格式的也有?
 考虑到各省的具体情况,比赛时下发的评测数据既有linux格式的,也有windows格式的。但是复测时统一采用linux格式的评测数据进行评测。


10.以root用户的身份登录系统,运行Arbiter(Single)进行评测时,result文件中显示“编译成功,cannot open player's output file”的信息。
 请用普通管理员用户身份运行Arbiter(Single)评测系统,使出超级用户root运行该评测系统就会出现如上的错误提示信息。


11.设定好比赛的配置文件之后,点击评测按钮会造成Arbiter(Single)自动退出。
 引发这一情况的原因是比赛配置文件中的评测点文件数据与配置信息不匹配,请检查两者是否一致。其中,评测点文件输入文件的扩展名为in,答案文件的扩展名为ans。以题目ball为例,其第一个测试点的输入/输出文件名分别为ball1.in/ball1.ans。


12.为什么手动测试选手程序与标准答案是一样的,评测软件给出的结果中却没有给分?
 出现这种情况的可能原因如下:
1)选手手动测试自己的程序时使用了IDE环境中的扩展编译选项;
2)选手程序在运行时使用的内存大小或者运行时间超出了题面的限定值。

13.源程序中读入文件和输出文件的文件名是否是大小写敏感的?
 题面中规定的选手程序读入和输出文件的文件名是大小写敏感的。如果选手编写的程序中读入文件或输出文件的文件名与题面中规定的不一致,则评测时选手的程序将不能得分。


三.NOIP对Pascal语言使用限制的补充说明


1.PASCAL编程中能开{$m 100000000}类似的编译开关吗?
 不能,具体内容请参考NOI官方的规定。因选手程序采用了与官方公布的规定不兼容的数据类型或编译开关等原因造成复测结果与地方评测结果不一致的情形,以科学委员会复测时的结果为准且不接受选手申诉。

2.《NOI 评测环境及对编程语言使用限制的规定》对C和C++有合法的基本数据类型的明确规定,其中不包括long long,__int64等类型。比照C和C++的上述规定,为保证使用不同语言的公平性,Pascal语言的int64 也不在上述所指的基本数据类型中。为保证各地测评和复评的平稳进行,仍沿用上述规定。