寂静的角落 星空在前,路在脚下
预处理二进制对数表
发布于: 2021-04-04 更新于: 2021-04-06 分类于: 技巧 阅读次数: 

预处理 $lb$ 表。

$\color{Green}code$

1
2
3
4
5
template <typename T>
inline void mklb(T n, T *lb_table) {
lb_table[1] = 0, lb_table[2] = 1;
for (T i = 3; i <= n; ++i) lb_table[i] = lb_table[i >> 1] + 1;
}
本文默认采用 署名-非商业性使用-相同方式共享 4.0 国际 许可证