ACM比赛用的提交和评判软件谁有,或者谁能详细介绍下这个流程?能发个软件给我吗?

ACM比赛用的提交和评判软件谁有,或者谁能详细介绍下这个流程?能发个软件给我吗?,第1张

系统使用了早亏携mysql数据库,所以需要linux系统上安装有mysql,并安装了mysql的相关编程接口。

由于这些程序是从linux系统上直接复制过来的,所以,由于行尾问题,在windows记事本打开时会发现它没有换行。。

这里发的程序只是C++的后台程序,还有一些网页程序,用来做界面,没有发上来。

好,下面进入正题:

一、这里有三个cpp

一个是server.cpp,这个是一个后台服务的程序,我让它一直在后台运行,并监听一个端口,当php端需要判题时,就把源代码写到指定位置,然后,发一个连接到这个端口。这时,server程序就会产生一个进程来处理这次判题事件。

第二个是:equal.cpp,这个是判断生成的文件与答案是否相同的一个程序。

第三个是:judge.cpp,这个才是重头戏,它包含了其它的一堆头文件,真正的判题程序。

二、几个.h文件

1、db.h是数陆伏据库 *** 作类

2、log.h是写系统日志的函数

3、run.h是运行状态信息的类

4、problem.h是题目信息类

5、ExeRunner.h是ExeRunner类的头文件,一个最重要的类,主要是用来运行一个载入并运行其它的程序的。而且包含了监视功能。

6、mylib.h是我很久以前写的一个我自己的库,现在看起来挺弱智的,不过,当时确实空慧有好几个地方都用到了它。

7、disabled_syscall.h是来标识哪些系统调用可用,哪些不可用的。这个头文件是网上找的。

三、另外的那个RunLog是系统日志。不是源代码。

#include"judger.h"

int main(int argc,char**argv)

{

if (argc!=2) {WriteLog("调用判题程序时参数太少")return -1}

WriteLog(string("开始判断,本次运行的运行号为:")+argv[1])

Judger judger(stoi(argv[1]))

judger.Judge()

}

ACM程序设计大赛是大学级别最高的脑力竞赛,素来被冠以"程序设计的奥林匹克"的尊称。

具体情况:

大赛自1970年开始至今已有30年历史,是世界范围内历史最悠久、规模最大的程序设计竞赛。

比赛形式是:经过校级和地区级选拔的参赛组,于指定的时间、地点搜大正参加世界级的决赛,由3个成员组成的小组应用一台计算机解决6到8个生活中的实际问题。

ACM-ICPC以团队的形式代表各学校参赛,每队由3名队员组成。每位队员必须是在校学生,有一定的年龄限制,并且最多可以参加2次全球总决赛和5次区域选拔赛。

比赛期间,每队使用1台电脑需要在5个小时内使用C、C++或Java中的一种编写仿指程序解决7到10个问题。程序完成之后提交裁判运行,运行的结果会判定为正确或错误两种并及时通知参赛队。

而且有趣的是每队在正确完成一题后,组织者将世悔在其位置上升起一只代表该题颜色的气球。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12433868.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-23
下一篇2023-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存