摘要:
我不得不说:这道题真的~~很水~~ 首先,维护一个大根堆和一个小根堆 大根堆维护数列中小的部分,小根堆维护数列中大的部分 然后,每次输入两个数,大的加入小根堆,小的加入大根堆 为什么? ~~我不知道~~ 还有一个玄学操作: 把两个堆堆顶判断一下,大根堆堆顶大就叫换堆顶 于是可以愉快的AC了 C++代 阅读全文
摘要:
```cpp include include include include const int N=5001; const int M=500001; struct edge{ int to,next; }edge[M]; int DFN[N],LOW[N],belong[N],head[N],c 阅读全文
摘要:
有向图强连通分量的Tarjan算法 [有向图强连通分量] 在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。非强连通图有向图的极大强连通子图,称为强连通分量(strongly connecte 阅读全文