D. Lexicographically Minimal Shortest Path题解([2020, XIII Samara Regional Intercollegiate Programming Contest](https://codeforces.com/gym/102569))
摘要:Link 如何处理起点和终点呢? 先从终点搜,维护每个点到终点的距离 再从起点搜,每次从当前点,先选能到终点更近一步的边,再从这些边中,选出字母最小的所有边,加进集合中,直至搜到终点,就是字典序最小的最短路 #include <bits/stdc++.h> using namespace std;
阅读全文
Gym 102700A.Approach(三分板子)
摘要:Link #include <bits/stdc++.h> using namespace std; double x1,x2,yy1,y2; double x3,x4,y3,y4; double angle1,angle2,d1,d2; double get_dist(double a,doubl
阅读全文
树链剖分笔记
摘要:1.将一棵树转化成一个序列 2.树中路径转化成logn段连续区间 重儿子 重边 重链:对于轻儿子,重链自它起始 重儿子在它父节点的重链上 dfs中优先遍历重儿子 ,保证重链上所有点的编号是连续的 **定理:**树中任意一条路径均可拆分成O(logn)个重链(即为logn个连续区间) #include
阅读全文