来自文字文章:TTKJ竞赛规则及须知(通用)
天启竞赛积分系统(SRCS)
系统概述
本系统基于Elo衍生PRU算法核心逻辑简化开发,同时兼容个人编程竞赛与ACM式团队编程竞赛,去掉复杂的附加分与冗余修正规则,保留核心公平性,易理解、易落地。
基础核心规则
初始Rating设定
* 所有新选手/新队伍,初始Rating统一为1500
* Rating最低值锁定为1000,不会出现负分,新手友好
Rated/Unrated 判定规则
默认正常完成比赛的选手/队伍为Rated,满足以下任一情况判定为Unrated:
1. 比赛存在作弊、抄袭、代打、泄题等违规行为
2. 中途退赛、未提交任何有效通过代码
3. 赛事官方因不可抗力(系统故障、题目错误等)宣布本场全量Unrated
4. 本场比赛的出题人、验题人参赛
* Unrated主体不参与本场Rating计算,不影响原有Rating,除违规情况外不参与最终排名统计。
动态K值设定(控制Rating变动幅度)
K值越大,Rating变动幅度越大,分级设定简单好记:
* 新人期:K值为64,适用于前3场Rated比赛,快速收敛到真实水平
* 常规阶段:K值为32,适用于Rating 1000~2199,平衡稳定性与变动性
* 高分段:K值为16,适用于Rating ≥2200,保证高分段排名稳定性
核心RATING计算公式
前提定义
* 本场共有 N 个Rated参赛主体(个人/队伍)
* 主体 i 赛前Rating为 RiR_iRi
* 主体 i 最终排名为 rkirk_irki (rk=1为第一名,并列排名取平均排名,如2人并列第2,rk均为2.5)
计算步骤:
1. 计算实际胜场 SiS_iSi :代表本场实际击败的参赛主体数量
Si=N−rkiS_i = N - rk_iSi =N−rki
(例:10人参赛,排名第2, S_i=10-2=8 ,即击败了8个对手)
2. 计算预期胜场 EiE_iEi :基于Rating差计算的理论预期击败人数,保留Elo核心逻辑
Ei=Σ(j≠i)[1/(1+10((Rj−Ri)/400))]E_i = Σ(j≠i)[ 1 / (1 + 10^((R_j - R_i)/400)) ]Ei =Σ(j=i)[1/(1+10((Rj −Ri )/400))]
3. 计算Rating变动值 ΔiΔ_iΔi
Δi=K×(Si−Ei)Δ_i = K × (S_i - E_i)Δi =K×(Si −Ei )
( Δ_i 为正代表表现高于预期加分,为负代表低于预期扣分)
4. 计算赛后新RatingRi′Rating R_i'RatingRi′
Ri′=max(Ri+Δi,1000)R_i' = max( R_i + Δ_i , 1000 )Ri′ =max(Ri +Δi ,1000)
团队赛专属适配规则
ACM式3人制团队赛,提供两种可选模式:
模式1:纯队伍Rating模式
1.每支队伍拥有独立的队伍Rating,初始值1500
2.每场比赛以队伍为单位计算Rating变动,变动直接作用于队伍Rating
3.队员变动规则:3人制队伍单次比赛更换队员不超过1人,保留原队伍Rating;更换队员≥2人,视为新队伍,Rating重置为1500,避免刷分。
模式2:团队-个人Rating联动模式
适合校赛、新生赛等需要同步更新选手个人Rating的团队赛:
1. 队伍赛前Rating取参赛3名选手个人Rating的平均值
2. 按核心公式计算出队伍的Rating变动值 Δ
3. 队伍的 Δ 平均分配给3名参赛选手,同步更新选手个人Rating
违规与特殊情况处理
1. 轻微违规:本场Unrated,不扣减Rating,不影响后续比赛
2. 严重违规(作弊、抄袭、代打、泄题等):本场Unrated,额外扣减当前K值2倍的Rating(最低不低于1000),且后续3场比赛强制Unrated
3. 出题人/验题人参赛:本场Unrated,不扣减Rating,不参与排名
4. 收敛说明:持续稳定发挥的选手/队伍,约10场Rated比赛后,Rating将接近真实水平
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
文档更新日志:
* 2026.4.4 更新部分内容