Skip to content

参赛者

User 对象

每行排名数据中的 user 字段描述一个参赛者(如个人选手或团队)。

基本配置

一个 User 至少需要 idname

json
{
  "id": "team-alpha",
  "name": "Team Alpha"
}
字段说明必填默认值
id唯一标识符
name显示名称
official是否正式参赛true
organization所属组织(如学校)
teamMembers队伍成员列表[]
avatar头像图片
photo照片
location现场位置(如座位号)
markers标记 ID 列表

ID 唯一性

id 在整份 ranklist 中必须唯一,可用于去重、索引和交叉引用。

正式/非正式参赛

official 字段标记选手是否为正式参赛者(打星选手设为 false):

json
{
  "id": "guest-team",
  "name": "Guest Team",
  "official": false,
  "organization": "Some University"
}

注意

official 字段本身不直接影响排名计算。它的效果取决于所使用的排名系列规则:

  • ICPC 预设:默认仅正式选手参与奖区分配
  • Normal / UniqByUserField 预设:通过 includeOfficialOnly 选项控制

无论 official 值如何,选手都会出现在榜单中,除非渲染器进行了过滤。

团队信息

对于团队比赛,可以使用 organizationteamMembers 添加团队信息:

json
{
  "id": "team-1",
  "name": "SDUT Team 1",
  "organization": "Shandong University of Technology",
  "teamMembers": [
    { "name": "Alice" },
    { "name": "Bob", "link": "https://codeforces.com/profile/bob" },
    { "name": "Ciallo" }
  ]
}

teamMembers 中的每个成员是一个 ExternalUser 对象:

字段说明必填
name成员名称
avatar头像
link个人主页链接

标记

通过 markers 字段可以给选手打上标记(如"女队"、"省内队伍"等),需要配合顶层 markers 定义使用:

json
{
  "id": "team-gamma",
  "name": "Team Gamma",
  "markers": ["girls-team"]
}

→ 详见 标记系统

国际化名称

nameorganization 这样的 i18n 字符串支持国际化:

json
{
  "id": "pku",
  "name": {
    "fallback": "reborn as a vegetable dog",
    "zh-CN": "重生之我是菜狗"
  },
  "organization": {
    "fallback": "Peking University",
    "en": "Peking University",
    "zh-CN": "北京大学"
  }
}

→ 详见 进阶特性 — 国际化

完整字段定义请参阅 User 规范