倍增 线性倍增 预处理 $f[i][j]$表示从$i$开始的 长度为$2^{j}$ 的区间(即区间$[i, i+2^{j} 1]$) 递推公式(j在外层递增): $f[i][j]=max\{f[i][j 1], f[i+2^{j 1}][j 1]\}$ 即将区间$[l, r]$分为两个区间合并 查询 ...
分类:
其他好文 时间:
2018-10-02 22:19:39
阅读次数:
192
Description Solution 由于题目要求,将a[i]->b[i](边权为i)后所得的图应该是由森林和环套树组合而成。 假如是树形结构,所有的t[i]就直接在线段树t[i]点的dfs序(即in[t[i]],out[t[i]]区间)处记录t[i]点的深度。 这样,针对所有的f[i],在线段 ...
分类:
其他好文 时间:
2018-09-27 22:15:35
阅读次数:
204
LCA(最近公共祖先).....可惜我只会用tarjan去做 真心感觉tarjan算法要比倍增算法要好理解的多,可能是我脑子笨吧略略略 最近公共祖先概念:在一棵无环的树上寻找两个点在这棵树上深度最大的公共的祖先节点,也就是离这两个点最近的祖先节点。 最近公共祖先的应用:求解两个有且仅有一条确定的最短 ...
分类:
编程语言 时间:
2018-09-25 23:02:47
阅读次数:
206
Description A 联邦国有 N 个州,每个州内部都有一个网络系统,有若干条网络线路,连接各个 州内部的城市。 由于 A 国的州与州之间的关系不是太好,每个州都只有首府建立了到别的州的网 络。具体来说,每个州的首府都只主动地建立了一条网络线路,连接到距离最近的州的 首府。(欧氏距离。如果有多 ...
分类:
其他好文 时间:
2018-09-22 21:28:46
阅读次数:
166
今天学习了一下st表 其实好几天就一直看 用禚神仙的话来说: st表不支持在线修改 不支持!!!!! 一种利用dp求解区间最值的倍增算法。 定义:f[i][j]表示i到i+2^j-1这段区间的最大值。这里必须是i到i+2的j次方-1 别问为什么 规定!!! 预处理:f[i][0]=a[i]。即i到i ...
分类:
其他好文 时间:
2018-09-22 19:56:08
阅读次数:
361
学习计划--kd+最小割树+倍增什么的(以及貌似是oi生涯中第一次9k。。。) ...
分类:
其他好文 时间:
2018-09-22 17:00:48
阅读次数:
132
题目传送门:HDU - 4547 CD操作 题目大意: 略 分析: 求出目录A 到 B所需要的CD操作次数,这里的A B 位字符串 所以用到map映射,之后直接求LCA分情况讨论即可:设求A到B的CD操作数 1、A==B 需要的CD操作数是0 2、A是B的最近公共祖先,则A-->B的CD操作数是0 ...
分类:
其他好文 时间:
2018-09-22 15:57:03
阅读次数:
173
题目传送门:HDU - 6115 Factory 题目大意: (中文题,简单解答下题意) 存在N个城市和M个百度的子公司,N个城市间有N-1条道路连接(一颗树),每个子公司都有办公室,办公室分布在各个城市,现在提问,两个子公司间的最小距离。 分析: 枚举提问的两个子公司的办公室间的距离,求出最短距离 ...
分类:
其他好文 时间:
2018-09-22 14:44:15
阅读次数:
180
矩阵快速幂+倍增floyd 这道题十分神啊,floyd与矩阵快速幂(思想)结合。 矩阵快速幂的原理与普通快速幂一样,因为矩阵乘法满足交换律。 而这道题是让我们求从s出发恰好经过k条边(k =1; } include include include include include include in ...
分类:
其他好文 时间:
2018-09-22 12:48:16
阅读次数:
174
今天终于把倍增的LCA搞懂了!尽管周测都没写,尽管lca其实很简单,但这也是进度君的往前一点点的快乐。 倍增的lca其实关键就在于二进制的二进制的拆分(显然是两次的拆分,很奇妙,懂二进制的自然不觉得什么)。把最关键的地方在这里列举一下吧: 1.f[fa][i]=f[f[fa][i-1]][i-1]; ...
分类:
其他好文 时间:
2018-09-21 23:15:40
阅读次数:
451