摘要:
题目 这是一道经典树链剖分 维护区间和,区间最大值 #include<cstdio> #include<algorithm> using namespace std; int a[30005],top[30005],rev[120005],seg[30005],father[30005],sum[1 阅读全文
posted @ 2019-08-10 21:29
RiverSheep
阅读(321)
评论(0)
推荐(0)
摘要:
树链剖分一般用来求树上区间查询、修改 或 求LCA 学习树链剖分之前要学会线段树 树链剖分需线段树维护 首先弄清几个名字 重儿子 所有儿子中,子树大小最大那个儿子 轻儿子 除重儿子以外的儿子 重边 连接重儿子的边 轻边 连接轻儿子的边 重链 由重边组成的路径 轻链 由轻边组成的路径 举个例子: 剖分 阅读全文
posted @ 2019-08-10 21:22
RiverSheep
阅读(144)
评论(0)
推荐(0)
摘要:
题目 状压DP 设 f[i] 表示状态为 i 时的最大概率 那么很明显,f的转移为 但是如果我们这样做就要枚举i,j,k,时间会炸 所以要找优化的方法 认真观察,会发现其实k可以与处理出来 设两个数组,cnt[i],log[i] log[i]表示i是2的几次方(向下取整) cnt[i]状态为i时的k 阅读全文
posted @ 2019-08-10 20:16
RiverSheep
阅读(150)
评论(0)
推荐(0)

浙公网安备 33010602011771号