摘要:
A 树的直径板子. B 注意到树的直径有个性质:所有节点到其他点的最远距离一定在直径的端点处取到.怎么证明请查阅往期笔记. 这样,我们把直径留着,将其他点依次和端点匹配,最后加上直径的贡献就得到了第一问的答案. 那么如何输出方案?画个图可以发现取出其他点的过程类似于拓扑排序,于是我们模拟一遍拓扑排序 阅读全文
摘要:
以下,斜体表示注意点,粗体表示技巧点。 A spfa 最长路、环具有特殊性质考虑缩点。 容易发现环上的点可以通过跑很多次直到点权全部为 \(0\),于是缩点跑 spfa 最长路即可。 实现 #include<bits/stdc++.h> #define int long long using nam 阅读全文
摘要:
T1 分层图一般套路:dis 数组多设置一维表示层数、松弛时讨论是否换层即可。 参考实现 #include<bits/stdc++.h> #define int long long using namespace std; const int N=1e4+5,K=15; int n,m,k,s,t; 阅读全文