四条用例,四类输入

(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)⚠️ 判题机上没有测试框架,所以这一节用一份**最小的脚手架**:一个 CHECK 宏,数着"跑了几条、过了几条、挂了几条"。框架再花哨,核心也是

开始练习 →

🔴 一条挂了,而且挂得有道理

(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)⚠️ 判题机上没有测试框架,所以这一节用一份**最小的脚手架**:一个 CHECK 宏,数着"跑了几条、过了几条、挂了几条"。框架再花哨,核心也是

开始练习 →

写一份最小的测试脚手架

(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)⚠️ 判题机上没有测试框架,所以这一节用一份**最小的脚手架**:一个 CHECK 宏,数着"跑了几条、过了几条、挂了几条"。框架再花哨,核心也是

开始练习 →

⚠️ 把异常那条路也测上

(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)⚠️ 判题机上没有测试框架,所以这一节用一份**最小的脚手架**:一个 CHECK 宏,数着"跑了几条、过了几条、挂了几条"。框架再花哨,核心也是

开始练习 →

🔴 写一条能抓住 bug 的用例

(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)第二条要**挂**,这才说明它抓住了。

开始练习 →

⚠️ 修好它,老用例不许挂

(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)三条都要过。

开始练习 →

🔴 该从哪儿开始找性能问题

觉得程序慢,最该先做的是【0】。

开始练习 →

⚠️ 事先知道要装多少,该做什么

知道要往 vector 里装 1000 个,最该先做的是【0】。

开始练习 →

🔴 同一份数据,三种交法

(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)⚠️ 这一节的计数**只数标准强制的那几种**(传值、传 const&、push_back 一个左值 / 一个 move 过的),**不数返回值和临时对象**

开始练习 →

⚠️ 泛型组件也一样,别多拷

(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)⚠️ 这一节的计数**只数标准强制的那几种**(传值、传 const&、push_back 一个左值 / 一个 move 过的),**不数返回值和临时对象**

开始练习 →