Harris
发布于 2026-03-17 / 26 阅读
0
0

洛谷 Markdown 格式完全指南:从基础语法到高级排版

Markdown 的目标是实现「易读易写」,成为一种适用于网络的书写语言。因此洛谷使用 Markdown 发布内容。

请仔细阅读下列文档,如果没有按照要求正确使用格式,将可能无法发出讨论,或者被删除。

请注意

  • 本页面显示效果非洛谷主站实际效果,仅作为参考。部分语法的实际效果使用截图展示。
  • 部分标注了新特性的功能在老页面不支持展示,可使用编辑器的预览模式确定是否可用。

段落和换行

一个 Markdown 段落是由一个或多个连续的文本行组成,它的前后要有一个以上的空行。普通的 Markdown 段落不可以用空格或制表符来缩进。

空行:一行之内只包含回车换行、空格、制表符。

例如:

这是第一段话

这是第二段话

显示的效果如下:

这是第一段话

这是第二段话

如果两段之间不空一行,则无法正确分段。反面例子:

这是第一段话
这是第二段话

显示的效果如下:

这是第一段话 这是第二段话

段落内部换行

在行末输入两个空格可以达到比分段更加紧凑的换行的效果。

例如:

这是第一行  
这是第二行

(请注意“这是第一行”后的两个空格)

显示的效果如下:

这是第一行
这是第二行

标题

Markdown 的标题是在行首插入 1 到 6 个 ## 和标题文字之间使用一个或多个空格,对应到标题 1 到 6 级。

例如:

# 这是 H1
## 这是 H2
### 这是 H3
这是正文

显示的效果如下:

Image 1: 标题与正文

警告:不要全文使用标题,或者用标题强调特别多的文字。这会让读者觉得困扰。

强调

Markdown 使用星号(*)和底线(_)作为标记强调字词的符号:

  • *_ 包围 → 斜体
  • **__ 包围 → 粗体
  • ~~ 包围 → 删除线

例如:

*单星号斜体*
_单下划线斜体_
**双星号加粗**
__双下划线加粗__
~~删除线~~

显示的效果如下:

单星号斜体

单下划线斜体

双星号加粗

双下划线加粗

删除线

如果 *_ 两边都有空白,它们就只会被当成普通符号。若需显示字面量,可用反斜杠转义:

\*使用反斜线开头的\*被当做是普通的字符\*

显示为:

使用反斜线开头的被当做是普通的字符 *

代码块

大段代码

将 ``` 置于代码首行和末行,独立成行。可在首行指定语言(如 cppjava),未指定语言默认 fallback 到 C++

例如:

```cpp
#include<bits/stdc++.h>
using namespace std;
int main(){
  int a, b;
  cin >> a >> b;
  cout << a + b << endl;
  return 0;
}
```

显示效果:

Image 2: 未指定语言的代码

显示行号【新特性】

在代码块首行添加 line-numbers 参数:

```cpp line-numbers
// code here
```

效果:

Image 3: 代码行号示例

指定范围高亮【新特性】

使用 lines=<start>-<end> 参数:

```cpp lines=6-9
// code here
```

效果:

Image 4: 指定范围高亮示例

行号与高亮结合
```cpp line-numbers lines=5-6
// code here
```

效果:

Image 5: 行号显示与指定范围高亮结合示例

小段代码

用单个反引号包裹:

前面的内容 `printf("Hello World!\n");` 后面的内容。

显示为:

前面的内容 printf("Hello World!\n"); 后面的内容。

注:若需显示字面量 `,请使用 ``` 转义。

区块引用

在行首加 >,可嵌套(多层 >),内部支持其他 Markdown 语法。

例如:

> Markdown 标记区块引用的方法是在行的最前面加 `>`。
> 
> > 区块引用内部可以嵌套。
> > 
> > _我可以使用其他 Markdown 语法哦。_
> > 
> > ### 引用内三级标题
> > 
> > ```java
> > import java.net.URL;
> > ```

显示效果:

Markdown 标记区块引用的方法是在行的最前面加 >

区块引用内部可以嵌套。

我可以使用其他 Markdown 语法哦。

我是引用区块内使用 3 级标题语法

//在引用区块内可以加入代码块
    import java.net.URL;
    import java.util.Arrays;
    import java.util.Date;
    import java.util.Set;

列表

无序列表

使用 *+-,后接空格:

* Red
* Green
* Blue

效果:

  • Red
  • Green
  • Blue

有序列表

使用数字加英文句点:

1. Red
2. Green
3. Blue

效果:

  1. Red
  2. Green
  3. Blue

任务列表

- [ ] 未完成任务
- [x] 已完成任务

效果:

  • 未完成任务
  • 已完成任务

链接

行内式:

[链接文字](https://www.luogu.com.cn/ "可选标题")

显示为:

这是行内式链接标题

图片

语法:

![替代文字](图片URL "可选标题")

例如:

![洛谷网校 logo](https://cdn.class.luogu.com.cn/fe/logo-full.png "洛谷网校 logo")

显示:

Image 6: 洛谷网校 logo

提示:可使用洛谷图床上传图片。

自动链接

用尖括号包裹 URL 或邮箱:

<https://www.luogu.com.cn/>

显示为:

https://www.luogu.com.cn/

分隔线

三个以上 *-_(可带空格):

* * *
---
_ _ _

效果:




反斜杠转义

用于显示字面量符号:

\   反斜线
`   反引号
*   星号
_   底线
{}  花括号
[]  方括号
()  括弧
#   井字号
+   加号
-   减号
.   英文句点
!   惊叹号

表格

基本语法:

| 左对齐 | 居中 | 右对齐 |
|:---|:---:|---:|
| 内容 | 内容 | 内容 |

效果:

我是左对齐 我是居中对齐 我是右侧对齐
内容 内容 内容

表格合并【新特性】

  • ^:向上合并单元格
  • <:向左合并单元格
| 标题 1| 标题 2| 标题 3    |标题 4|
|:-:|:--------:|:--------:|:--:|
|1  |$\le 10$  |$\le 10$  |无   |
|2  |^         |^         |无   |
|9  |^         | 跨列合并 1         |<   |

效果:

Image 7: 表格合并示例

更像 Tuack 的表格【新特性】

使用 ::cute-table{tuack}

::cute-table{tuack}
| 测试点编号 | $n, m \leq$ | $k \leq$ | 特殊性质 |
| :-: | :-: | :-: | :-: |
| $1, 2$ | $6$ | $6$ | C |
| $3 \sim 5$ | $10^3$ | $10^3$ | ^ |
:::

效果:

Image 8: 更像 Tuack 的表格示例

居中/居右排版【新特性】

居中

:::align{center}
![](https://cdn.luogu.com.cn/upload/usericon/1.png) 123
#### 标题 4
:::

效果:

Image 9: 居中排版示例

居右

:::align{right}
![](https://cdn.luogu.com.cn/upload/usericon/1.png) 123
#### 标题 4
:::

效果:

Image 10: 居右排版示例

引言【新特性】

:::epigraph[——otto]
大家好啊,我是说的道理,今天来点大家想看的东西。
:::

效果:

Image 11: 引言示例

折叠框【新特性】

支持 :::info:::success:::warning:::error,标题支持 LaTeX 公式,用 {open} 默认展开。

::::info[我是标题]
大家好啊,我是说的道理,今天来点大家想看的东西。
::::::::info[我是默认展开的折叠框]{open}
使用 `{open}` 使折叠框默认展开。
::::::::success[$$\displaystyle\sum_{i = 1}^n \sum_{j = 1}^n \gcd(i, j)$$]
数学公式也是可以出现在标题上的。
::::

效果:

Image 12: 折叠框示例

嵌套规则:最内层用三个 :,每外一层加一个 :

插入 Bilibili 视频

详见 洛谷粘贴板说明

LaTeX 公式支持

详见 LaTeX 说明文档


评论