Skip to content

Commit 8fc6a23

Browse files
committed
新增模板题题解规范
1 parent 0a49b32 commit 8fc6a23

File tree

3 files changed

+51
-3
lines changed

3 files changed

+51
-3
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
---
2+
sidebar_position: 4
3+
sidebar_label: 模板题题解规范
4+
---
5+
6+
# 洛谷模板题题解规范
7+
8+
## 前言
9+
10+
模板题作为题库中一类具有特殊性质的题目,相较于普通题目,其教学与指导意义更为显著。这类题目往往成为用户学习相关算法与知识的核心参考资料。鉴于此,本文特制定针对模板题题解的进一步规范,旨在更有效地满足用户的学习需求。
11+
12+
## 基本规范
13+
14+
- 文章必须满足[洛谷主题库题解规范](solution-standard.md)
15+
- 文章必须至少包含如下三部分内容:算法介绍、正确性证明、代码实现。这三部分必须**通过标题加以区分**,书写于不同的章节中。
16+
- 文章可以包含部分需要使用相应算法解决的相关例题,但是不宜对例题解法做篇幅过大的阐述(可以使用一两句话简单描述解法)。
17+
- 文章主体部分应由作者自行完成,不得抄袭。对引用参考资料的部分,应正确标注引用,给出资料来源。
18+
19+
## 算法介绍
20+
21+
**这部分是对算法本身的介绍**,需要包括算法主要用于解决什么问题、算法流程等内容。
22+
23+
对于数据结构类(广义,包括图论、字符串等)模板题,最好添加部分图片来示意数据结构在运行中的变化。
24+
25+
对于数学算法类模板题,需要做好相关概念和函数、变量的定义,给出前置知识的简介或学习链接。
26+
27+
**这一部分内容应该主要基于算法的具体运行流程**,不要涉及过多的抽象化、形式化内容,以简明易懂为目标。
28+
29+
## 正确性证明
30+
31+
**这部分是对算法更深层次的介绍**。首先应该证明算法本身的正确性,并证明算法的时间复杂度。如果相关算法有更深刻的本质,或更抽象、更形式化的描述,也可以在这一部分说明。
32+
33+
- 如果算法本身正确性和复杂度比较显然,这一部分可以略过。
34+
- 如果这部分证明需要一些远超算法本身难度的过于复杂的内容(比如并查集关于反阿克曼函数复杂度的证明),可以略去证明。
35+
36+
## 代码实现
37+
38+
**这部分应该有文字介绍上文的模板如何应用到模板题上**,并给出**可以通过模板题**的代码。
39+
40+
原则上,鼓励模块化清晰、接口明确的代码。鼓励把相关算法实现成接口明确的函数/类,不鼓励采用面向过程的方法把所有内容都塞在主函数中。
41+
42+
如果相关算法/数据结构在某语言的官方库中(如 C++ 的 STL)中有实现,也应该给出自行实现的算法代码。在此基础上,可以另外给出一份使用官方标准库实现的代码。
43+
44+
> 注:这里指的是算法本身不应该直接调库。对于算法内部的一些辅助数据结构可以不加说明的直接调库。
45+
> 例如,堆的模板题应该给出具体实现,而不应该只使用 `std::priority_queue`;但后缀自动机的模板题里可以直接使用 `std::unordered_map` 而无需手动实现一个。
46+
47+
代码必须清晰易读,使用合适美观的换行和缩进。但不要求必须是 C++ 语言实现的。

docs/rules/academic/solution-standard.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,7 @@ $$\begin{bmatrix} f_{i + 1} \\ f_i \end{bmatrix} = \begin{bmatrix} 1 & 1 \\ 1 &
147147
- **不应在代码中加入防抄袭内容。**
148148

149149
## 提交与审核
150+
150151
- 请在文章编辑页点击【提交题解】按钮,具体见[个人文章功能-申请提交为题解](../../../manual/luogu/article#submit-solution)
151152
- 提交审核时应确保题解符合以上规范。
152153
- 提交审核后,一般情况下,题解将于七天内被审核。如果超过七天仍未被审核,可以私信管理提醒,**七天内禁止催审**
@@ -158,4 +159,4 @@ $$\begin{bmatrix} f_{i + 1} \\ f_i \end{bmatrix} = \begin{bmatrix} 1 & 1 \\ 1 &
158159

159160
- [个人专栏文章功能说明](../../../manual/luogu/article)
160161
- [如何用 Markdown & LaTeX 写一篇排版整齐的题解?](./guide/solution.md)
161-
- [题解审核及反馈要求(原讨论帖)](https://www.luogu.com.cn/discuss/174934)
162+
- [题解审核及反馈要求(原讨论帖)](https://www.luogu.com.cn/discuss/174934)

docs/rules/community/discuss.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
已绑定手机号
2525

2626
**受信用户:**
27-
已经进行奖项认证,或者是等级分不小于 1200,或者是橙名以上。
27+
已经进行奖项认证,或者是等级分不小于 800,或者是橙名以上。
2828

2929
**各板块门槛:**
3030

@@ -36,7 +36,7 @@
3636

3737
请用户在发帖时注意板块:
3838

39-
- **站务版**是管理团队发布网站重要信息的地方
39+
- **站务版**是管理团队发布网站重要信息的地方
4040
- 普通用户无法发帖,仅受信用户可回复帖子。
4141
- **学术版****进行计算机科学学术内容(含站内外题目)交流**的地方,而并不是发布水帖的地方,界限由管理员进行把控。
4242
- 仅受信用户可发帖和回复,其他实名用户仅能查看内容。

0 commit comments

Comments
 (0)