# 讲解稿（第 31 课 · 实验四）

> **做出来不等于会做。** 这一份是这一课的重点：对你**做出来的**每道题，
> 讲清三件事——为什么可以这么解、复杂度是多少、以及**多大的数据规模会把这种方法淘汰掉**。
>
> 每一题四段，标题别改名（`py check_timeline.py` 按标题找段落）：
>
> 1. `### 解决什么问题` —— 用两三句话把题目说清楚，不要抄题面。
> 2. `### 为什么正确` —— 讲**不变式**：你的算法在每一步保证着什么？为什么它不会漏解、不会多算？
> 3. `### 复杂度怎么推` —— 从算法结构推出来，不要背结论。
> 4. `### 多大的规模会淘汰它` —— **必须带具体数字**（写成 `n ≤ 2×10^5`、`10^6 个数要 2 秒` 这样）。
>    这一段是这一课真正要考的东西：说不出淘汰规模，说明你只是记住了这道题。

### 写之前的自检：怎么知道自己写清了

- 把第四段单独读一遍：**里面有没有一个能对上的数字？** 没有数字就是没写清。
- 把 `### 为什么正确` 那一段给别人看：他能照着它说出"为什么这样不会漏解"吗？
- 写不下去，说明那道题你其实没真懂——回课件对应那一课重看。

> 五道题都要写，**包括你放弃的那一道**：放弃的那一道要写清
> "我为什么不写它、以及正确解法要靠什么"。

---

## p1 · 舞台高度

### 解决什么问题
待填

### 为什么正确
待填

### 复杂度怎么推
待填

### 多大的规模会淘汰它
待填

---

## p2 · 四边形合并

### 解决什么问题
待填

### 为什么正确
待填

### 复杂度怎么推
待填

### 多大的规模会淘汰它
待填

---

## p3 · 数颜色

### 解决什么问题
待填

### 为什么正确
待填

### 复杂度怎么推
待填

### 多大的规模会淘汰它
待填

---

## p4 · 最长公共子串

### 解决什么问题
待填

### 为什么正确
待填

### 复杂度怎么推
待填

### 多大的规模会淘汰它
待填

---

## p5 · 雨天迷宫

### 解决什么问题
待填

### 为什么正确
待填

### 复杂度怎么推
待填

### 多大的规模会淘汰它
待填
