- 博客(3)
- 收藏
- 关注
原创 快速乘法 Lucas定理
一个式子a*b 对于乘数b来说,可以写成二进制形式,比如1001101。由乘法分配律:a * b = a * (b1 + b2 + b3 + ……) 那么对于a * 53 = a * 110101(二进制) = a * (100000 + 10000 + 100 + 1) = a * (100000 * 1 + 10000 * 1 + 1000 * 0 + 100 * 1 + 10 * 0 +
2016-05-22 16:41:36 410
原创 HDU 3487(伸展树模板)
再也不想写第二次。 题意:给一个n一个q 表示一开始有n个数 接下来q个操作 CUT a b c表示把[a, b]剪切到c处,FILP a b 将[a, b]区间翻转。 伸展树搞。 看的题解:点击打开链接 代码挺好理解的感觉。 #include #include #include #include #include #include #define value ch[ch[ro
2016-05-03 16:50:32 423
原创 ZOJ 3195(LCA模板)
题意:给一个带权图 然后q个询问 每个询问有三个数x y z,求x y z这三个点连接起来需要多少距离。 LCA 对于每个询问求出任意两个点对的LCA 加和 / 2。 #include #include #include #include #include #include #include using namespace std; const int dx[] = {
2016-05-01 16:25:37 424
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人