### LaTeX 公式的格式
-1. 请不要滥用 LaTeX 公式字体(比如对一些英文单词使用公式字体),我们通常使用 LaTeX 公式字体表示变量名称。
+LaTeX 作为公式排版的首选,我们应当正确地使用它。因此对于Latex的使用我们有严格的要求。如果您想要快速上手,可以阅读本章节末给出的表格。
-2. 对于 LaTeX 公式,请注意常见的问题, **一定要使用** `$\log$` 、 `$\min$` 、 `$\max$` 、 `$\gcd$` 等,而非 `$log$` 、 `$min$` 、 `$max$` 、 `$gcd$` 。对于最小公倍数,请使用 `$\operatorname{lcm}$` 而非 `$lcm$` ,省略号请使用 `$\cdots$` ,叉乘请使用 `$\times$` ,点乘请使用 `$\cdot$` 。其他非数学内容,包括中文、英文、特殊符号等,一律使用 `\text{}` 。
+1. 首先从使用 Roman 体表示常量和函数做起。LaTeX 已经预先定义好了一些常见的常量、函数、运算符等,我们可以直接调用,包括但不限于:
-3. 所有公式中的希腊字母等特殊符号,请不要使用输入法的插入特殊符号功能,而应该使用对应的 LaTeX 公式符号。如 phi 大多数情况下应该使用 `$\varphi$` 而不是 `$\phi$` 。
+ ```latex
+ \log, \ln, \lg, \sin, \cos, \tan, \sec, \csc, \cot, \gcd, \min, \max, \exp, \inf, \mod, \bmod, \pmod
+ ```
-4. 在不会引起歧义的情况下,请用 `\times` 代替星号。如 $a\times b$ ,而不是 $a\ast b$ 。
+ 所以在输入常量、函数名、运算符等时,请先检查一下是否应该使用 Roman 体或其它字体,LaTeX 符号的书写可参考[此页](https://katex.org/docs/supported.html)内容(不是全部),也可以百度求解。
-5. 请用 `\cdots` , `\ldots` , `\vdots` 代替 `...` 。如 $a_1,a_2,\cdots a_n$ ,而不是 $a_1,a_2,... a_n$ 。
+ 如果遇到没有预先定义好的需要使用 Roman 体的 **函数名** ,我们可以使用 `$\operatorname{something}$` 来产生,如我们可以使用 `$\operatorname{lcm}$` 产生正体的最小公倍数(函数)符号。同理,产生 Roman 体的 **常量** 应用 `$\mathrm{}$` ;其他非数学内容,包括中文、英文、特殊符号等,一律使用 `$\text{}$` 。
-6. 请注意,不要将任何代码的表示方法使用 LaTeX 公式。例如,使用 `=` 而不是 `==` (如 $a=b$ ,而不是 $a==b$ )、使用 `a<<1` 或者 $a\times 2$ 而不是 $a<<1$ 、使用 `a\bmod b` 代替 `a%b` (如 $a\bmod b$ ,而不是 $a%b$ )等。
+2. 在不会引起歧义的情况下,请用 `$\times$` 代替星号,叉乘请使用 `$\times$` ,点乘请使用 `$\cdot$` 。如 $a\times b,a\cdot b$ ,而不是 $a\ast b$ 。
-7. 为了统一,复杂度分析时大 $O$ 记号请直接使用 `$O()$` 而不要 `$\mathcal O()$` 。
+3. 请用 `$\cdots$`(居于排版基线与顶线中间) , `$\ldots$` (居于排版基线的位置), `$\vdots$`(竖着的省略号) 代替 `$...$` 。如 $a_1,a_2,\cdots a_n$ ,而不是 $a_1,a_2,... a_n$ 。
-8. 公式中尽量避免中括号而多使用下标。即 $a_{i,j,k}$ 而不是 $a[i][j][k]$ 。在公式中下标较复杂的情况下建议改用多元函数( $f(i,j,k)$ )或内联代码格式。
+4. 请注意,不要将任何代码的表示方法使用 LaTeX 公式。例如,使用 `$=$` 而不是 `$==$` (如 $a=b$ ,而不是 $a==b$ )、使用 ```` `a<<1` ```` 或者 `$a\times 2$` 而不是 `$a<<1$` 、使用 `$a\bmod b$` 代替 `$a\%b$` (如 $a\bmod b$ ,而不是 $a\%b$ )等。
-9. LaTeX 作为公式排版的首选,我们应当正确地使用它。首先从使用 Roman 体表示常量和函数做起。LaTeX 已经预先定义好了一些常见的常量、函数、运算符等,我们可以直接调用,包括但不限于:
+5. 为了统一,复杂度分析时大 $O$ 记号请直接使用 `$O()$` 而不要 `$\mathcal O()$` 。
- ```tex
- \log, \ln, \lg, \sin, \cos, \tan, \sec, \csc, \cot, \gcd, \min, \max, \exp, \inf, \mod, \bmod, \pmod
- ```
+6. 公式中尽量避免中括号而多使用下标。即 $a_{i,j,k}$ 而不是 $a[i][j][k]$ 。在公式中下标较复杂的情况下建议改用多元函数( $f(i,j,k)$ )或内联代码格式。
- 所以在输入常量、函数名、运算符等时,请先检查一下是否应该使用 Roman 体或其它字体,LaTeX 符号的书写可参考[此页](https://katex.org/docs/supported.html)内容(不是全部),也可以百度求解。
+7. 请不要滥用 LaTeX 公式。这不仅会造成页面加载缓慢(因为 MathJax 的效率低是出了名的),同时也会导致页面的排版混乱。我们通常使用 LaTeX 公式字体表示变量名称。我们的建议是,如非必要,尽量减少公式与普通正文字体的 **大量** 混合使用,如非必要,尽量不要使用公式,如:
-10. 如果遇到没有预先定义好的需要使用 Roman 体的 **函数名** ,我们可以使用 `\operatorname{something}` 来产生,如我们可以使用 `\operatorname{lcm}` 产生正体的最小公倍数(函数)符号。同理,产生 Roman 体的 **常量** 应用 `\mathrm{}` ;其他非数学内容,包括中文、英文、特殊符号等,一律使用 `\text{}` 。
+ 我们将要学习 $Network-flow$ 中的 $SPFA$ 最小费用流,需要使用 $Edmonds-Karp$ 算法进行增广。
-11. 请不要滥用 LaTeX 公式。这不仅会造成页面加载缓慢(因为 MathJax 的效率低是出了名的),同时也会导致页面的排版混乱。我们的建议是,如非必要,尽量减少公式与普通正文字体的 **大量** 混合使用,如非必要,尽量不要使用公式,如:
+ 就是一个典型的 **滥用公式字体** 的例子。
- 我们将要学习 $Network-flow$ 中的 $SPFA$ 最小费用流,需要使用 $Edmonds-Karp$ 算法进行增广。
+8. 请正确使用对应的 LaTeX 符号,尤其是公式中的希腊字母等特殊符号。如欧拉函数请使用 `$\varphi$` ,圆的直径请使用 `$\Phi$` ,黄金分割请使用 `$\phi$` 。这些符号虽然同样表示希腊字母 Phi,但是在不同的环境下有不同的含义。切记 **不要使用输入法的插入特殊符号** 来插入这种符号。
- 就是一个典型的 **滥用公式字体** 的例子。
+ 另外,由于 LaTeX 历史原因,空集的符号应为 `$\varnothing$` 而不是 `$\emptyset$` ;由于近百年来数学符号演变,定义集合符号应使用 **人民教育出版社 A 版** 书写的版本,即 实数集 `$\mathbf{R}$` ,正整数集 `$\mathbf{N}^*$` 等。同理,其他的符号按照中国国内最常使用的版本来书写,重点参照数学和信息技术课本。
-12. 请正确使用对应的 LaTeX 符号。如欧拉函数请使用 `\varphi` ,圆的直径请使用 `\Phi` ,黄金分割请使用 `\phi` 。这些符号虽然同样表示希腊字母 Phi,但是在不同的环境下有不同的含义。切记 **不要使用输入法的插入特殊符号** 来插入这种符号。
+我们可以使用一个表格来总结一下上述内容。注意本表格没有举出所有符号的用法,只给出常见的错误。类似的情况类比即可。
- LaTeX 的省略号请使用 `\cdots` (居于排版基线与顶线中间)或 `\ldots` (居于排版基线的位置),点乘请使用 `\cdot` ,叉乘请使用 `\times` 。目前,表示 Dirichlet 卷积的符号采用 `*` (参照 Wikipedia)。
+| 不符合规定的用法 | 渲染效果 | 符合规定的用法 | 渲染效果 |
+| --------------------- | --------------- | ---------------------------------- | ----------------------------- |
+| `$log, ln, lg$` | $log, ln, lg$ | `$\log, \ln, \lg$` | $\log, \ln, \lg$ |
+| `$sin, cos, tan$` | $sin, cos, tan$ | `$\sin, \cos, \tan$` | $\sin, \cos, \tan$ |
+| `$gcd, lcm$` | $gcd, lcm$ | `$\gcd, \operatorname{lcm}$` | $\gcd,\operatorname{lcm}$ |
+| `$小于a的质数$` | $小于a的质数$ | `$\text{小于a的质数}$` | $\text{小于a的质数}$ |
+| `$...$` | $...$ | `$\cdots, \ldots, \vdots, \ddots$` | $\cdots,\ldots,\vdots,\ddots$ |
+| `$a*b$`(两个数相乘) | $a*b$ | `$a\times b,a\cdot b$` | $a\times b,a\cdot b$ |
+| `$SPFA$`(英文名称) | $SPFA$ | `SPFA` | SPFA |
+| `$a==b$` | $a==b$ | `$a=b$` | $a=b$ |
+| `$f[i][j][k]$` | $f[i][j][k]$ | `$f_{i,j,k}, f(i,j,k)$` | $f_{i,j,k},f(i,j,k)$ |
+| `$R,N^*$`(集合) | $R,N^*$ | `$\mathbf{R},\mathbf{N}^*$` | $\mathbf{R},\mathbf{N}^*$ |
+| `$\empty$` | $\empty$ | `$\varnothing$` | $\varnothing$ |
- 另外,由于 LaTeX 历史原因,空集的符号应为 `\varnothing` 而不是 `\emptyset` ;由于近百年来数学符号演变,定义集合符号应使用 **人民教育出版社 A 版** 书写的版本,即 实数集 `\mathbf{R}` ,正整数集 `\mathbf{N}^*` 等。同理,其他的符号按照中国国内最常使用的版本来书写,重点参照数学和信息技术课本。
-13. 请注意您的文档结构。文档结构应当是十分条理的,具有清晰的层次的。请不要让诸如「五级标题」这种事情再次发生了,一篇正常的文章是用不到如此复杂的结构层次的。
-14. 表示强调时请使用 `**SOMETHING**` 而非某级标题,因为使用标题会导致文章结构层次混乱和(或)目录出现问题。
+### Markdown 格式
-15. 请正确使用 Markdown 的区块功能,插入行间代码请使用一个反引号包围代码区块,行间代码请使用三个反引号包围代码区块,其中反引号就是键盘左上角波浪线下面那个符号。
+1. 请注意您的文档结构。文档结构应当是十分条理的,具有清晰的层次的。请不要让诸如「五级标题」这种事情再次发生了,一篇正常的文章是用不到如此复杂的结构层次的。
+2. 表示强调时请使用 `**SOMETHING**` 而非某级标题,因为使用标题会导致文章结构层次混乱和(或)目录出现问题。
+3. 请正确使用 Markdown 的区块功能,插入行间代码请使用一个反引号包围代码区块,行间代码请使用三个反引号包围代码区块,其中反引号就是键盘左上角波浪线下面那个符号。
#### 文档存储的格式