Liuser's OJ 主题库题目规范

Brilliance 紫罗兰 2024-03-01 23:15:52 2024-08-08 14:51:23 72

本规范将作为 Liuser's OJ 主题库的题目规范,规范的最终解释权归管理所有。

主题库中已有的题目将会保留不做删除,管理员会逐步根据本规范修改题目。新加题目将严格遵守本规范,因此贡献题目时需自查,如果不合格将不会加入。当官方题目与本规范冲突时,以官方题目为准。

基本规范

  • 所有数学符号、常数、作为变量的字母应使用 LaTeX 公式,请严格遵守 LaTeX 公式的格式要求
  • 中文与英文字符或公式之间以一个空格隔开,但中文标点符号与英文字符或公式之间不应有空格,如:
Brilliance 和 root 是好朋友。
第一行一个整数 $n$。
  • 句末的句号不能漏掉。

题面

题目背景

  • 题目背景最好尽量简短,在题目背景较长时,应当与题目描述分开。需要绝对避免题目背景严重影响题意的理解。必要时,可以提供与背景结合的题目描述与简洁的题目描述两个版本。

题目描述

  • 要求清晰易懂
  • 同一道题目的变量名大小写应统一,不应出现在某处是 $n$,而在另一处变成 $N$ 的情况。同时建议变量与题目相关时使用小写,无关时(如数据组数)使用大写。

输入/输出格式

  • 如果单个测试点包含多组数据,应在输入格式加粗说明「本题有多组数据」。
  • 描述多个并列的变量时,应合并为一个公式。
  • 除部分特殊情况外,用作序号的数字建议使用中文。
**本题有多组数据**。
第一行一个整数 $T$,表示数据组数。
对于每组数据:
第一行三个整数 $n,m,k$。  
接下来 $n$ 行,每行 $m$ 个整数,表示输入矩阵 $a$。
  • 输出特定字符串时应使用行内代码块
一行一个字符串 `inf`
  • 如果输出中含有小数,请尽量使用 Special Judge。

样例

  • 样例应当有一定的强度,能够查出一些简单的错误。读错题意的人应当能够通过样例发现自己读错了题意。
  • 有多种操作的题,每种操作都应在样例中出现。有多种输出的题,每种可能的输出都应在样例中出现。
  • 如果提供大样例,可以在数据范围处用 markdown 的链接指向一个剪贴板或网盘,而非直接简单地粘贴到样例里面。

说明/提示

  • 包括样例说明数据范围提示,三者之间应用分隔线隔开。

样例说明

  • 题目描述越复杂、越不易理解就越应当有详细的样例说明,题目难度越简单就越应当有详细的样例说明。一般来说,一道题至少应该有一个样例说明。

数据范围

  • 数据类型(如整数、实数、字符等)应在输入格式中说明,数据范围应在说明/提示中说明。数据范围必须有上界和下界的描述,字符串必须有字符集的描述,实数必须有小数点后位数的描述。因此输入格式中不必说明「正整数」或「非负整数」而只需说明「整数」。
  • 除部分特殊情况外,数据范围中 的数应使用科学计数法(当有效位数较少时)。
  • 不同变量的数据范围应分开为多个公式,即要求公式与公式之间用全角逗号隔开。特别地,若存在多个变量的数据范围相同,也可以合并为同一个公式。
  • 部分分应描述为「对于 的数据」而不是「对于50%的数据」。同时,若部分分具有依赖关系,应省略部分分中的多余数据范围及下界,如:
对于 $30\%$ 的数据,$n \le 10$,$m \le 100$。  
对于 $60\%$ 的数据,$n \le 100$。  
对于另外 $20\%$ 的数据,$a_i,b_i > 0$。
对于 $100\%$ 的数据,$1 \le n \leq 10^4$,$-10^9 \le a_i,b_i \le 10^9$。
  • 如果一道题目需要捆绑测试,应在说明/提示加粗说明「本题采用捆绑测试」,对 Subtask 的描述推荐采用无序列表,最后应有对于 的数据的数据范围。

题目标签

  • 题目标签用于阐述本题所用的的算法、出处、评测配置。
  • 算法标签表示这个题常见解法中可能用的算法。最多可以选择 个。若不确定可以不填写。
  • 来源表示这个题目的出处赛事。若不在提供的赛事范围内或者不确定可以不填写。
  • 时间表示这个题目首次出现在公开场合的时间。若不确定可以不填写。
  • 区域表示了这个题目(特别是国内题目)的具体省市出处。若不在提供的省市范围内或者不确定可以不填写。
  • 特殊题目提供了特殊的评测方式,若不选择对应标签则无法使用这些功能:
    • 交互题:一类用户提交的程序,通过出题人提供的交互库,与判题程序(SPJ)进行交互并获得输入、解答问题的试题。具体配置详见交互题功能说明
    • 提交答案:一类用户只需提交自己的代码或者根据出题人下发的输入文件对应的输出文件的试题。
    • Special Judge:当一个题目可以接受多种正确答案,即有多组解的时候,题目就必须被 Special Judge。具体配置详见 Special Judge 使用说明
    • O2 优化:当一个赛时题目的评测需要使用 O2 优化时勾选的标签。若不勾选,选手无法开启 O2 优化。若勾选,则默认 O2 优化。
    • 初赛、高性能、新云端:被废除的标签,将在之后的更新中去除。

时空限制

  • 原则上,时空限制应至少为 std 在最坏情况下的两倍,且不应小于 500ms。

翻译

  • 必须遵守本帖中的基本规范

  • 建议只翻译简要题意,并采用无序列表,其中最后一项包括主要数据范围特殊注意事项,如:

    • 给定 个正整数 。
    • 你需要求出 和 。
    • ,答案对 取模。

参考资料

{{ vote && vote.total.up }}

共 13 条回复

CPP 刷题王

ok

Brilliance 紫罗兰

(123) 感觉第二个效果好 放吧

CPP 刷题王

那在用公式的时候括号放在不在公式里?

Brilliance 紫罗兰

@CPP 提示吧
如果是别的比赛原来就在题面的 就不用动 新出的题目就放在提示

CPP 刷题王
CPP 刷题王

输入一个整数 ,() 还是 还是数据范围统一放在提示里面? @Brilliance @root

ttt

1

CPP 刷题王

qpzc,前排售卖小零食

ttt

3

ttt

2