https://www.cnblogs.com/fusiwei/p/11860931.html https://www.cnblogs.com/lfri/p/9316529.html https://www.cnblogs.com/fusiwei/p/11172476.html ...
分类:
其他好文 时间:
2019-11-23 23:37:35
阅读次数:
67
"题目" 这,大概是我在CSP前最后的一篇模板题了吧。 时隔一年,昨天又一次成功地打对了LCA,可海星。 这里用的是倍增的写法。 Code: ...
分类:
其他好文 时间:
2019-11-13 13:19:10
阅读次数:
55
先求出任意一棵最小生成树,然后对边分类讨论1.非树边,答案即最小生成树的环上的最长边2.树边,反过来考虑,相当于对于每一个点对那条路经打上标记,取min对于1直接用倍增维护即可,对于2可以用树链剖分/差分+启发式合并但都需要两个log,所以有一种很神奇的做法考虑从小到大枚举非树边,然后暴力修改,容易 ...
分类:
其他好文 时间:
2019-11-12 16:02:56
阅读次数:
76
CF379F New Year Tree 分析: 树的直径就是每次求树中最远的两个点。 在一棵树上快速计算两两点之间的距离,可以用倍增。 设现在树上最远的两个点为L和R。 若在u处加两个点,直径会+1或者不改变。 对这两个点求一下到L的距离,和到R的距离,看会不会使答案更优,如果使得答案更优,就把L ...
分类:
其他好文 时间:
2019-11-11 21:44:06
阅读次数:
118
SP3978 DISQUERY - Distance Query LCA高级水题 倍增搞一搞即可 代码: #include<bits/stdc++.h> using namespace std; const int N=100005; int n,m; int hed[N<<1],tal[N<<1] ...
分类:
其他好文 时间:
2019-11-10 17:32:54
阅读次数:
66
vector, 变长数组,倍增的思想 size() 返回元素个数 empty() 返回是否为空 clear() 清空 front()/back() push_back()/pop_back() begin()/end() [] 支持比较运算,按字典序 pair<int, int> first, 第一 ...
下午遇到了 LuoguP3597和LuoguP4159 这应该是我在网络流后第二次遇到的拆点。这两道题是结合邻接矩阵和拆点。 邻接矩阵有一个性质:设邻接矩阵A,则在矩阵Ak中,点aij的值表示从点i到j长度为k的通路数量。长度表示边的个数。 P4159 要求的是:在有向图中,从起点到终点的路径权值和 ...
分类:
其他好文 时间:
2019-11-09 23:17:40
阅读次数:
94
A.险恶的迷宫 题意:在二维平面坐标内,给出一个圆心坐标 (a,b),以及圆的半径 r , 再给出 n 个点的坐标 (x_i,y_i), 求有多少点在圆内。 数据范围:0 < n <= 1e5, 0< r , x , y <=1e9 思路:对于判断距离根据勾股定理: sqrt((x1-x2)*(x1 ...
分类:
其他好文 时间:
2019-11-09 22:11:46
阅读次数:
82
跑路 `最短路` 吐槽一句,这题是真的奇葩数据,答案都是 ……~~出题人真的懒~~,~~然而我还是不会~~ 这题数据范围给了很大的提示,50的数据范围,求一个最短的时间,$floyd$就能上。 然后看到那及其标志性的$2^k$,所以跟倍增能扯上关系。 所以得到了题目的考点 倍增&最短路 所以思路就出 ...
分类:
其他好文 时间:
2019-11-09 19:46:07
阅读次数:
84
https://loj.ac/problem/10132 题目描述 给出一棵$N$个点的树,有$M$个时刻,每个时刻有三种可能的事件:$①$某个点出现异象石;$②$某个点的异象石被摧毁;$③$求使异象石所在点被联通的边集的总长度。 思路 题目给出的使一 ...
分类:
其他好文 时间:
2019-11-03 20:09:37
阅读次数:
74