ACM 板子
# 1. 简介
这是一个 ACM-XCPC 竞赛的技能树、代码仓库,由 HDU 吾有一數名之曰誒 (int a)、吾有一數名之曰嗶 (int b) 队员 Axiomofchoice 维护。
# 2. 导航
| 文件名 | 介绍 |
|---|---|
| Math.md (opens new window) | 数学 |
| Graph.md (opens new window) | 图论 |
| Geometry.md (opens new window) | 计算几何 |
| Datastructure.md (opens new window) | 数据结构 |
| Others.md (opens new window) | 动态规划、字符串、编程技巧等 |
| Conclusion.md (opens new window) | 结论 |
# 3. 代码风格
- 之前:OI 风格(随便起的名),非必要不用空格、到处压行。
- 现在:Google 风格但是会有压行。
- 模板里两种风格共存。
代码中的预定义:
- 循环宏,
repeat (i, a, b)表示i从a循环到b - 1,repeat_back (i, a, b)表示i从b - 1反着循环到a。
#define repeat(i, a, b) for (int i = (a), _ = (b); i < _; i++)
#define repeat_back(i, a, b) for (int i = (b) - 1, _ = (a); i >= _; i--)
- 宏
fi表示first,se表示second。 - 类型
ll表示long long,lf表示double,pii表示pair<int, int>。 rnd()会生成一个 64 位无符号整数范围内的随机数。- 宏
mst(a, x)表示memset(a, x, sizeof(a))。 - 以前图方便用
v << e表示v.push_back(e),正在逐渐减少这种写法。