domjudge题目配置和开比赛

系统使用的是7.3.3,domjudge配置的方法请参考前文

domjudge配置-CSDN博客

题目导入

传统比较

首先可以去domjudge中随便下载一个题目,下载下来的压缩包应该是这样的

│  domjudge-problem.ini
│  problem.pdf
│  problem.yaml
│
└─data
    └─secret
            1.ans
            1.in
            2.ans
            2.in
            3.ans
            3.in

problem.pdf为题面,没测试过别的,根据参考博客还有一个html格式,没测试过

domjudge-problem.ini,存放该题的评测细节,如果是传统题,里面只有时限,第二个颜色改不改都没有什么影响,可以根据他法气球颜色等

problem.yaml,存放该题的评测细节,如果是传统题,里面应该只有题目名字和内存限制(单位MB),name是题目的名字,memory是内存限制

 在/data/secret 中存放测试数据,同一对.in 和 .ans,作为一组测试数据

/data/sample,存放样例数据,但是我不太需要

修改完成,将数据打包成zip上传到domjudge

特判题目

特判题目的格式如下

│  domjudge-problem.ini
│  problem.yaml
├─data
│  └─secret
│          000.ans
│          000.in
│          001.ans
│          001.in
│          example0.ans
│          example0.in
│          example1.ans
│          example1.in
│
└─output_validators
    └─validate
            checker.cpp
            testlib.h

需要在problem.yaml 中添加一行内容 validation: custom,如下

# Problem exported by DOMjudge on 2021-12-11T13:38:57+01:00
name: 'Ball?'
validation: custom
limits:
    memory: 512

特判文件中的testlib.h可以从下边下载

cn-xcpc-tools/testlib-for-domjudge: testlib for domjudge (github.com)

至于怎么写特判,可以看一下洛谷上的特判书写规则

Special Judge 功能说明 | 洛谷帮助中心 (luogu.com.cn)

还有一种是交互题目,交互题的话,我暂时不知道怎么出题和上传到平台,如有大佬欢迎补充。

账号的导入

使用管理员账号登陆之后可以手动一个一个账号的添加,一个队伍一个队伍的添加,如果说队伍数量较少,你这样手动添加的话还是可以理解的,但是如果有几百几十个队伍的话,这样手动添加就会增加很大的工作量,所以我们可以选择批量导入账号信息

先导入 teams.tsv 再导入 accounts.tsv

tsv文件时每列直接使用 tab 间隔,但是excel并不是,所有我们可以在excel中将信息输入完成后,将其全选复制到tsv文件中

teams.tsv

teams	1
6	acmteam_001	3	team001	LDUniversity	LD	CHN	LD

第一行固定的不需要修改

第二行开始就是每一列的信息分表表示如下内容

唯一的队伍ID\t	唯一的外部ID\t	team_category的ID\t	队名\t	校名\t	校名(短)\t	国家\t	唯一的校名外部ID

唯一的队伍ID就是后台显示队伍ID(可以是任意一个,只要不冲突),唯一的尾部ID就是后台显示的 ICPC ID,team_category的ID固定为3,为参赛选手的意思。 

accounts.tsv

accounts	1
team	lduacm_001	lduacm_006	AFhs5lxwm

第一行固定不需要修改

第二行的意思如下

角色(team, admin等)\t	名字\t	username\t	password

角色固定为team,名字就是正常的用户名字,username就是登陆时间的账户名字,密码就是你设置的,可以使用一些手段给他随机生成一下

accounts在导入时间会根据username去自动挂在队伍的ID,跳过username前面的非数字字符,在跳过 0 以后,剩下的数字字符作为对应的队伍ID(剩下的不是数字就不挂队伍了,),对应的源码如下:

$teamid = preg_replace('/^[^0-9]*0*([0-9]+)$/', '\1', $line[2]);

比赛的开启

比赛就可以直接在admin账号下进行设置,开始比赛,设置活动开始时间,比赛开始时间,封榜时间,比赛结束时间,解榜时间,比赛终止时间等信息,在将以上的题目拉取等

结语

通过以上两篇博客就可以开启一场比赛,可以手动创建一些气球派送者的角色、榜单的角色、judgehost的角色,api的角色一般用来配置icpctool的等有待考察

对于ACMer来说,赛后的滚榜也是非常有趣的环节

滚榜配置:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/208964.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

西南科技大学(数据结构A)期末自测练习五

一、选择题(每空 1 分,共 5 分) 1、下面关于图的叙述中,正确的是( )。 (1).回路是简单路径 (2).存稀疏矩阵,用邻接矩阵比邻接表更省空间 (3).若有像图中存在…

网页开发 JS基础

目录 JS概述 基本语法 数据类型内置方法 DOM对象 查找标签 绑定事件 操作标签 jQuery 查找标签 绑定事件 操作标签 Ajax请求 数据接口 前后端分离 ajax的使用 JS概述 一门弱类型的编程语言,属于基于对象和基于原型的脚本语言. 1 直接编写<script>console…

numpy知识库:深入理解numpy的repeat函数和numpy数组的repeat方法

前言 numpy中的repeat函数顾名思义&#xff0c;可以将给定的数组沿着指定的轴重复多次&#xff0c;生成一个新的数组。但具体如何重复呢&#xff1f;本次博文就来探讨并试图回答这个问题&#xff0c;感兴趣的小伙伴可以继续阅读下去&#xff0c;希望对你有所启示~ numpy中的r…

Linux基本指令(后篇)

目录 14.时间指令date 15.Cal指令 16.find指令(非常重要) 17.grep指令 18.打包压缩指令zip和tar以及解压指令unzip和tar 14.时间指令date date(显示当前时间) 1.在显示方面&#xff0c;使用者可以设定欲显示的格式&#xff0c;格式设定为一个加号后接数个标记&#xff0c;其中…

企业存货库存综合分析全流程图

上期我们谈到了 诊断存货管理的4大维度&#xff0c;今天我们进一步全方位、全周期的分析企业内存货的问题。 企业存货是企业用于生产或销售的货品&#xff0c;是企业价值增值变现的载体&#xff0c;但是如果一旦没有产生交易&#xff0c;存货就很有可能带来损失。存货伴随着企业…

C#基础与进阶扩展合集-进阶篇(持续更新)

目录 本文分两篇&#xff0c;基础篇点击&#xff1a;C#基础与进阶扩展合集-基础篇 二、进阶扩展 1、Predicate 2、设置C#语言版本 3、ListCollectionView过滤集合 4、Adapt适配器 5、值类型与引用类型 6、程序设置当前项目工作目录 7、获取App.config配置文件中的值 …

Mysql多表查询 子查询

目录 关联查询——cross join 概述&#xff1a; 关联查询 inner join 概述&#xff1a; 关联查询 outher join 概述&#xff1a; inner join 和outher join 的区别 子查询 IN 概述 IN 分析 子查询 exists exists 分析 SQL之母 - SQL自学网站SQL自学网站http://sqlmo…

冒个泡!OceanBase亮相 2023 新加坡金融科技节

近日&#xff0c;OceanBase 亮相 Singapore Fintech Festival 2023&#xff08;2023 新加坡金融科技节&#xff09;&#xff01;本届新加坡金融科技节于 2023 年 11 月 15 日至 17 日在新加坡博览展览中心举行&#xff0c;展会期间&#xff0c;OceanBase 得到了众多金融科技机构…

2023-12-01 AIGC-自动生成ppt的AI工具

摘要: 2023-12-01 AIGC-自动生成ppt-记录 自动生成ppt: BoardMix boardmix 一键生成ppt boardmix是一款基于云的ai设计软件&#xff0c;允许创建用于各种目的的自定义演示文稿、ai绘画&#xff0c;ai生成思维导图等。以下是它的一些功能&#xff1a; 可定制的模板 - 它有一个…

无人机助力电力设备螺母缺销智能检测识别,python基于YOLOv5开发构建电力设备螺母缺销小目标检测识别系统

传统作业场景下电力设备的运维和维护都是人工来完成的&#xff0c;随着现代技术科技手段的不断发展&#xff0c;基于无人机航拍飞行的自动智能化电力设备问题检测成为了一种可行的手段&#xff0c;本文的核心内容就是基于YOLOv7来开发构建电力设备螺母缺销检测识别系统&#xf…

从0开始学习JavaScript--JavaScript ES6 模块系统

JavaScript ES6&#xff08;ECMAScript 2015&#xff09;引入了官方支持的模块系统&#xff0c;使得前端开发更加现代化和模块化。本文将深入探讨 ES6 模块系统的各个方面&#xff0c;通过丰富的示例代码详细展示其核心概念和实际应用。 ES6 模块的基本概念 1 模块的导出 ES…

提高Idea编码速度和插件自用推荐

非常推荐 Easy Javadoc 一款注释生成器&#xff0c;很好使~免费&#xff0c;配合使用腾讯、百度之类的翻译免费额度完全够用了&#xff0c;印象中是50万字符每月。下图是使用快捷键生成的注释&#xff08;我采用鼠标侧面按键&#xff0c;随手一按很方便&#xff09; Chinese …

MySQL 基础、进阶、运维的学习笔记

1. MySQL 基础篇 1.1 MySQL 概述 1.1.1 数据库相关概念 数据库(Database, 简称 DB): 存储数据的仓库&#xff0c;数据是有组织的进行存储。 数据库管理系统(Database Management System, 简称 DBMS): 操作和管理数据库的大型软件。 SQL(Structured Query Language, 简称 S…

万界星空科技MES生产管理系统的主要功能

万界星空科技MES/云MES生产管理系统主要包括以下功能模块&#xff1a; 生产计划管理&#xff1a;根据订单和生产计划&#xff0c;制定详细的调度表和车间生产经营计划&#xff0c;将生产计划和客户订单转化为具体的生产经营计划&#xff0c;消除有效的日常运营&#xff0c;大大…

macOS本地调试k8s源码

目录 准备工作创建集群注意点1. kubeconfig未正常加载2. container runtime is not running3. The connection to the server 172.16.190.132:6443 was refused - did you specify the right host or port?4. 集群重置5.加入子节点 代码调试 准备工作 apple m1芯片 安装vmwa…

计算机毕业设计 基于SpringBoot的敬老院管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…

熬夜会秃头——beta冲刺Day2

这个作业属于哪个课程2301-计算机学院-软件工程社区-CSDN社区云这个作业要求在哪里团队作业—beta冲刺事后诸葛亮-CSDN社区这个作业的目标记录beta冲刺Day2团队名称熬夜会秃头团队置顶集合随笔链接熬夜会秃头——Beta冲刺置顶随笔-CSDN社区 目录 一、团队成员会议总结 1、成员…

力扣225-用队列实现栈

文章目录 力扣225-用队列实现栈示例代码实现总结收获 力扣225-用队列实现栈 示例 代码实现 class MyStack {Queue<Integer>queue1;Queue<Integer>queue2;public MyStack() {queue1new LinkedList<Integer>();queue2new LinkedList<Integer>();}public…

webGL开发学科演示项目方案

开发学科演示项目需要考虑到教育目标、互动性和用户体验。以下是一个可能的技术方案&#xff0c;可用于实现这样的项目&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 1.WebGL 框架&#xff1a; 选择…

管理Windows资产新方式:SSH协议

配置默认shell&#xff0c;需要管理员权限运行powershell执行下面命令&#xff1a; New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -PropertyType String -F…