建自己的模板库
约 10 分钟
高手都有个自己的“工具箱”:二分、自定义排序规则、前缀和、快速幂这些常写的片段,整理进一个文件,用时直接翻出来抄,不用每次从头憋。就像做手工先备好常用零件,效率高还不容易出错。下面这段自定义排序,就很适合收进模板库。
#include <bits/stdc++.h>
using namespace std;
int main() {
vector<pair<int,int>> v = {{1,9},{1,3},{2,5}};
// 模板:先按第一个升序,第一个相同再按第二个升序
sort(v.begin(), v.end(), [](auto& a, auto& b){
if (a.first != b.first) return a.first < b.first;
return a.second < b.second;
});
for (auto& p : v) cout << p.first << "," << p.second << " ";
// 输出 1,3 1,9 2,5
return 0;
}
建议:每个片段都配一句注释写清“干什么、怎么用”,隔一阵回头看才认得。光存代码不写说明,时间一长自己都看不懂了。
小纸条
整理三个你最常用的代码片段。
登录 后可看答案