- 通知
GF 24 域题目、题解规范
- @ 2026-8-2 18:27:38
题目规范
本规范将作为 GF24 域题库的题目规范,规范的最终解释权归参议院(即 root 管理员)所有。
题库中已有的题目将会保留,管理员会根据本规范逐步修改;新加题目需严格遵守本规范。
当前版本更新时间:2026-08。
基本规范
- 请正确使用全角中文标点符号。特别地,句末要有句号。
- 数学公式(运算式、运算符、参与运算的常数、作为变量的字母等)应正确使用 LaTeX,非数学公式(一般英文单词、题目名、算法名、人名等)不应使用 LaTeX。
- 中文与英文、数字或公式之间以半角空格隔开,但中文标点符号与英文、数字或公式之间不应有空格。
题目背景
这里「题目背景」包括但不限于题目中「题目背景」一栏中的内容,也包括「题目描述」中的背景故事。
- 好的题目背景应起到帮助理解题意的作用,如 [P5291 十二省联考 2019] 希望 和 [P6776 NOI2020] 超现实树。
- 需要绝对避免题目背景影响题意的理解,同时不应有过多与题目本身无关的内容。
- 必要时,可以提供形式化题意。
题目描述
- 要求清晰、简洁、易懂、严谨,不应出现需要样例才能理解题意的情况,不应使用容易引起歧义的表述。
一些需要特别注明或说明的内容:
- 子串、子序列:应当注明子串是连续的,子序列是不一定连续的。
- 所有子串、所有子序列:应当说明是否包含空串或空子序列。
- 本质不同:应当说明其精确定义。
一些错别字:
- 联通:应写成「连通」。
- 同一道题目的同一个变量,名字的大小写应统一,不应出现在某处是 ,而在另一处变成 的情况。
输入格式
- 描述多个并列的变量时,应合并为一个公式。
- 除部分特殊情况外,用作序号的数字建议使用中文。
- 表述时应注意形式上的统一,不应出现「输入」二字时有时无的情况。
源代码复制
**本题有多组数据**。
第一行一个整数 $T$,表示数据组数。
对于每组数据:
第一行三个整数 $n,m,k$。
接下来 $n$ 行,每行 $m$ 个整数,表示输入矩阵 $a$。
输出格式
- 输出特定字符串时应使用行内代码块。
源代码复制
一行一个字符串 `inf`。
- 如果题目有多种可能的正确输出,包括输出小数(可能有浮点误差的情况),需要用到 Special Judge,请在输出格式中说明。
- 如果答案需要取模,请在题目描述和输出格式中两次说明。
- 表述时应注意形式上的统一,不应出现「输出」二字时有时无的情况。
说明/提示
- 包括样例说明、数据范围和提示。
数据范围
- 数据类型(整数、实数、字符、字符串等)应在输入格式中说明,数据范围应在说明/提示中说明。需要绝对避免数据类型是「正整数」但数据范围是「 」的情况。
- 数据范围必须有上界和下界的描述,字符串必须有字符集的描述,实数必须有小数点后位数的描述。
- 当有效位数较少时, 的数应使用科学计数法。
- 不同变量的数据范围应分开为多个公式,公式与公式之间用全角逗号隔开。特别地,若存在多个变量的数据范围相同,也可以合并为同一个公式。
- 若部分分具有依赖关系,可以省略部分分中不必要的数据范围。
- 原则上,要有对于全部测试数据的数据范围。
- 使用百分号表述部分分时,需要避免出现歧义,必要时推荐使用表格表述。
源代码复制
对于 $30\%$ 的数据,$n \le 10$。
对于 $60\%$ 的数据,$n \le 1000$。
对于另外 $20\%$ 的数据,$a_i,b_i > 0$。
对于 $100\%$ 的数据,$1 \le n \le 10^5$,$-10^9 \le a_i,b_i \le 10^9$。
- 如果需要捆绑测试,应加粗说明「本题采用捆绑测试」,对 Subtask 的描述推荐采用无序列表。
源代码复制
**本题采用捆绑测试**。
- Subtask 1(30 points):$n \le 10$。
- Subtask 2(30 points):$n \le 1000$。
- Subtask 3(20 points):$a_i,b_i > 0$。
- Subtask 4(20 points):无特殊限制。
对于所有测试数据,$1 \le n \le 10^5$,$-10^9 \le a_i,b_i \le 10^9$。
- 如果没有部分分,一个变量的数据范围可以写在输入格式中。
时空限制
- 原则上,时空限制应至少为 std 在最坏情况下的 倍,且不应过小或过大。
多语言
这是洛谷里的内容。想必 GF24 域里,除了 FISH 也没有人会闲的做多语言了。
- 排版必须遵守本规范中的基本规范。
- 需要遵循原语言版本的内容进行完整翻译,不得夹带译者私货(含求通过等其他非翻译内容)。不能仅提供形式化题意,每个语言版本必须能独立阅读。
- 对于不影响题意的内容(如外国人名、题面自创新名词),允许保留原文并附加注释声明不影响理解题意(有能力的可以概括下大意)。
- 对于专有名词可在翻译中使用
( )标注外语原文。 - 对于同个词的翻译需在全文中保持一致。
- RemoteJudge 的试题,除了在被知名书籍引用且被翻译的情况外,题目标题无需进行任何翻译,请照原样抄写标题。
- 允许使用 AI 进行辅助翻译,但必须注明使用了 AI 进行翻译。用户应当人工进行校对,确保用词准确,表达符合规范。
题解规范
前言
随着题解审核工作的不断发展,原有的题解审核及反馈要求已经不再满足当前的需求。
本文将对一系列题解规范相关的内容进行整合,形成一套适用于当前 GF24 域的完整的规范,帮助用户快速熟悉题解的创作与提交流程。
声明
本规范将作为 GF24 域题库题解的审核要求以及反馈要求。规范的最终解释权归管理所有。
图文说明




基本规范
- 请正确使用全角中文标点符号。特别地,句末要有句号。
- 数学公式(运算式、运算符、参与运算的常数、作为变量的字母等)应使用 LaTeX,非数学公式(一般英文单词、题目名、算法名、人名等)不应使用 LaTeX。
- 中文与英文、数字或公式之间以半角空格隔开,但中文标点符号与英文、数字或公式之间不应有空格。
题解内容
- 应只包含题目相关内容,包括但不限于题意简述、题目分析等;不应出现大量无关内容,包括但不限于闲聊、吐槽、加戏、求赞、求管理员通过、「蒟蒻的第一篇题解」等内容。
- 对于题面较长的题目,建议加入题意简述,但不应完整复制题面至题解中。
- 题目分析中必须包含做这一道题目的主要思路,包括但不限于:使用了什么算法或数据结构,以及对于相应算法或者数据结构的具体分析。
- 题目分析应给出完整正确的解法与说明,并对解法中的重要结论进行解释与证明。给出的解法应能够在合理的时间复杂度内通过题目。
- 可以使用视频链接的功能对题解文字内容做补充说明,但是题解的文字部分必须是完整充分的,不能提交仅含有视频而没有其他说明的题解。
- 如果需要引用一些来自他人的内容,请确保不会侵犯他人的版权,并且必须使用链接标注来源。
- 关键思路、论证过程、代码等内容不得使用生成式 AI 辅助产生。
- 如使用生成式 AI 辅助写作(排版、润色),必须在文末(或附录中)明确披露生成式 AI(GenAI)的具体贡献。具体规范
排版
- 应使用 markdown 正确排版。
- 应使用
#, ##, ###, ####符号表示标题行。标题应对文章结构进行引导;不应滥用标题行表示强调与无意义内容。 - 应使用
-, +, *来表示无序列表,用1.来表示有序列表。以下是一个例子:
源代码复制
- QAQ
- QwQ
- QvQ
- QAQ
- QwQ
- QvQ
源代码复制
1. QAQ
2. QwQ
3. QvQ
- QAQ
- QwQ
- QvQ
- 应使用行内代码块表示字符串或代码,如
aabc。 - 应使用行间代码块引用代码。
- 应使用
[]()引用链接,如 题解审核及反馈要求([题解审核及反馈要求](https://www.luogu.com.cn/discuss/174934))。 - 应使用
![]()引用图片,如。

数学公式
- 数学公式(运算式、运算符、参与运算的常数、作为变量的字母等)应使用 LaTeX。同一个数学公式应写在一个 LaTeX 环境内。
- 数学公式中的文本应使用
\text,字符串应使用\texttt。如 ($a \text{ is prime}$),($S = \texttt{aabcd}$)。 - 公式独立成行时应使用行间公式。以下是一个行间公式的例子:
源代码复制
$$a + b = c$$
- 数学公式中应使用数学语言而非代码语言。
- 赋值语句
a = b;可以写作 ($a \gets b$)或 ($b \to a$)。 - 判定语句应使用 (
$=, \ne, <, \le, >, \ge$)与艾佛森括号( 当 为真时取值为 , 为假时取值为 )进行描述。 - 整除应使用 $\lfloor \frac{a}{b} \rfloor, \lfloor a / b \rfloor, \lfloor a \div b \rfloor$(
$\lfloor \frac{a}{b} \rfloor, \lfloor a / b \rfloor, \lfloor a \div b \rfloor$),不应使用 或 直接表示整除。 - 取模应使用 (
$a \bmod b$) 或 ($a \equiv b \pmod p$)。 - 不应出现 等结构体式的写法,如有需要可以使用上下标表示。
- 位运算应使用 $\operatorname{and}, \operatorname{or}, \operatorname{xor}$(
$\operatorname{and}, \operatorname{or}, \operatorname{xor}$)。特别地,对于状态压缩 DP 等一类常用位运算实现集合运算的代码,建议在题解中用集合语言直接描述。以下是一个例子:
- 赋值语句
源代码复制
$$dp_{S \cup \{u\}} \gets dp_{S}+w_u$$
- 上下标应使用 (
$a _ {b} ^ {c}$)进行表示。 - 大数字应使用科学计数法表示,如 。
- 时间复杂度的大 记号中不应带有常数,如有值域、字符集大小等常量,应使用字母进行表示。
- 应正确使用运算符,如 (
$+, -, \pm, \times, \cdot, \div, \le, \ge, \mid$)。 - 特定的、约定俗成的函数名称应该使用正体,如 (
$\gcd, \max, \min, \log, \det$)。特别地,对于一些未定义的函数,应使用\operatorname,如 (\operatorname{lcm})。 - 应正确使用大型运算符,如 (
$\sum, \prod, \bigcup, \bigcap$)。建议在可能引起误解的地方加上括号。 - 应正确使用取模符号。
- 取模运算应使用
\bmod,如 ($a \bmod b = c$)。 - 同余符号应使用
\equiv与\pmod,如 ($a \equiv c \pmod b$)。
- 取模运算应使用
- 应正确使用数学结构符号,如 (
$\frac{a}{b}, \sqrt{a}, \overline{a}, \{a\}$)。 - 应正确使用箭头符号,用 (
$\to, \gets$)表示赋值,用 ($\Leftarrow, \Rightarrow$)表示因果关系。 - 省略号应使用 (
$\dots, \cdots, \ldots$),特别地,矩阵中其它方向的省略号应使用 ($\vdots, \ddots$)。 - 波浪线应使用 (
$\sim$)。 - 连等式应使用
\aligned环境,分段函数应使用\cases环境,矩阵应使用\bmatrix环境。以下是一些例子:
源代码复制
$$\begin{aligned} \sum _ {i = 1} ^ n \sum _ {j = 1} ^ n \gcd(i, j) &= \sum _ {i = 1} ^ n \sum _ {j = 1} ^ n \sum _ {d \mid \gcd(i, j)} \varphi(d) \\ &= \sum _ {d = 1} ^ n \varphi(d) \sum _ {i = 1} ^ n \sum _ {j = 1} ^ n [d \mid \gcd(i, j)] \\ &= \sum _ {d = 1} ^ n \varphi(d) \sum _ {i = 1} ^ n \sum _ {j = 1} ^ n [d \mid i][d \mid j] \\ &= \sum _ {d = 1} ^ n \varphi(d) \left\lfloor \frac{n}{d} \right\rfloor ^ 2 \end{aligned}$$
$$\begin{aligned} \sum _ {i = 1} ^ n \sum _ {j = 1} ^ n \gcd(i, j) &= \sum _ {i = 1} ^ n \sum _ {j = 1} ^ n \sum _ {d \mid \gcd(i, j)} \varphi(d) \\ &= \sum _ {d = 1} ^ n \varphi(d) \sum _ {i = 1} ^ n \sum _ {j = 1} ^ n [d \mid \gcd(i, j)] \\ &= \sum _ {d = 1} ^ n \varphi(d) \sum _ {i = 1} ^ n \sum _ {j = 1} ^ n [d \mid i][d \mid j] \\ &= \sum _ {d = 1} ^ n \varphi(d) \left\lfloor \frac{n}{d} \right\rfloor ^ 2 \end{aligned}$$源代码复制
$$\lvert 2x - 1 \rvert = \begin{cases} 2x - 1 & x > \frac{1}{2} \\ 0 & x = \frac{1}{2} \\ 1 - 2x & x < \frac{1}{2} \end{cases}$$
$$\lvert 2x - 1 \rvert = \begin{cases} 2x - 1 & x > \frac{1}{2} \\ 0 & x = \frac{1}{2} \\ 1 - 2x & x < \frac{1}{2} \end{cases}$$源代码复制
$$\begin{bmatrix} f_{i + 1} \\ f_i \end{bmatrix} = \begin{bmatrix} 1 & 1 \\ 1 & 0 \end{bmatrix} \times \begin{bmatrix} f_i \\ f_{i - 1} \end{bmatrix}$$
$$\begin{bmatrix} f_{i + 1} \\ f_i \end{bmatrix} = \begin{bmatrix} 1 & 1 \\ 1 & 0 \end{bmatrix} \times \begin{bmatrix} f_i \\ f_{i - 1} \end{bmatrix}$$- 更多的符号与记号可以参考 LaTeX Mathematical Symbols。
图片与代码
- 题解中引用的图片应简洁、清晰、美观,图片中的文本也需要满足格式要求。请不要引用带有链接的图片。
- 题解中如需配图(如示意图、流程图等),原则上必须上传至 BCOI - 我的文件,避免使用外部链接导致失效甚至被替换成违法违规图片。如果有动图的需求,可以使用 Bilibili。
- 题解需附带代码。若题解较为简短,则在绝大多数情况下应当补充附上代码实现(哪怕只是核心片段),除非审核员根据具体题目判断认为“无代码的纯文字说明已经足够清晰合理”。否则相关题解可能不予通过。
- 过长代码请使用 折叠块 而非云剪贴板。请使用“折叠块”功能将代码收起,以便读者按需展开查看,保持题解清爽。
- 代码应具有一定的可读性,可以适当添加有意义的注释进行阐释。
- 解法不应只在代码注释中描述,应在代码外使用正常文字书写。
- 若需引用他人代码,请确保不会侵犯他人的版权,并且必须使用链接标注来源,位置建议放于代码之前。
- 不应在代码中加入防抄袭内容。
0 条评论
目前还没有评论...