如何用 Markdown 和 LaTeX 写一篇排版整齐的题解?
提示
本文并非官方文档,而是由用户 StudyingFather 撰写的指南性文章,见末尾 Reference 部分的“本文原文链接”。洛谷官方 不对本文的适用性做任何保证。
本文将会对 Markdown 和 的语法进行深入解读,旨在教会阅读本文的读者正确使用 Markdown 和 书写博客或题解。
本文将会通过正反对比的方式,指出一些做法的错误之处,并给出相应的正确做法。
笔者假设将要读本文的读者已经掌握了 Markdown 和 的语法。如果您还不熟悉的话,建议先查阅末尾 Reference 部分的资料。
接下来进入正题。
1 一些基本格式要求
这里是一些非常基本的格式要求,适用于任何格式的文本文档。
- 请在每句话的末尾添加句号;
- 请正确使用标点符号,注意区分全角符号与半角符号的使用(汉语请使用全角符号,英语请使用半角符号);
- 中文与西文字符或公式之间以一个半角空格隔开,但标点符号与西文字符或公式间不要加空格。
下面是一些错误示范:
- 然而即使这样优化后它看上去还是十分辣手(违反 1.1)
- 众所周知,生存还是死亡,这是个问题.(违反 1.2)
- 该算法的时间复杂度为,无法通过的数据,需要使用Dijkstra的堆优化算法。(违反 1.3)
我们来修正一下:
- 然而即使这样优化后它看上 去还是十分辣手。
- 众所周知,生存还是死亡,这是个问题。
- 该算法的时间复杂度为 ,无法通过 的数据,需要使用 Dijkstra 的堆优化算法。
2 在正确的地方,用正确的语言
如果你的题解要公开让其他人看到,请顾及他人感受。
以下几点是不提倡的:
- 出现不友好的语言(尤其是入门题);
- 代码中出现大块的预编译指令;
- 分析内容过少(尤其是需要推导的数学题以及模板题);
- 啰嗦太多无关的废话。
下面是错误示范。
- 这是一道大水题!其他的题解咋都写那么烂!(违反 2.1)
- 这个题目是一个数学题,打表可以发现答案是 。(违反 2.3)
- 先让我吐槽一下背景和数据(中间省略 字)。(违反 2.4)
3 标题的使用
标题是引导文章结构的,不是用来强调的。
因此请不要用标题把字弄的很大,达到强调的目的。
下面是错误示范(为了不破坏文章 TOC,把错误示范用代码块框了起来):
# 这是一道非常水的题!!!
## 我们可以用贪心来解决本题。
# 求管理员审核通过 QAQ
同样的道理,大段的加粗强调也是不合适的。强调的目的是让读者找到重点,如果全是重点,那和没有重点又有什么区别呢?
4 列表的食用方式
4.1 无序列表
Markdown 中的无序列表可以用 *
,-
,+
表示,并且它们都是等价的。
- QAQ
- QwQ
- QvQ
显示的效果是(把前面的 -
换成 *
和 +
渲染效果一样):
- QAQ
- QwQ
- QvQ
当然,+
号用的较少,这里不推荐大家使用。
在 -
和 *
中,因为 *
已经担当了较多的用途(包括加粗,斜体等),为了防止歧义,推荐大家用 -
表示无序列表。