摘要:#include using namespace std; typedef long long ll; double pi=acos(-1.0); double eps=1e-8; const int mod=1e9+7; bool vis[200001]; int dist[200001]; int n,m,s,t,ans=0; int nedge=-1,p[200001],c[200001...
阅读全文
摘要:http://www.cnblogs.com/jianrenfang/p/6622404.html 会长的代码很朴实,很平易近人。就是区间最短路。
阅读全文
摘要:#include using namespace std; const int N = 5e5+50; int n,lst; struct UnionTable { int f[N],s[N],v[N],d[N]; void init(int n) { for(int i=1; is[f2]) f[f2]=f1,v[f2]=c,s[f1]+=s[f2...
阅读全文
摘要:动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。 现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。 有人用两种说法对这N个动物所构成的食物链关系进行描述: 第一种说法是"1 X Y",表示X和Y是同类。 第二种
阅读全文
摘要:告诉你两两冲突的序列,让输出字典序最小。 一开始老老实实tarjan,写完了发现后面完全不能好弄,因为选了第一个点,你没办法快速找出全部对立组,只能找出本来在一个pair中的那个对立组,而找不出给定的那个随意的对立组。所以直接从1开始染色,弄不出来就染2。以此类推。 这个题还有一个教训就是,点要多开
阅读全文
摘要:这道题涨了很多姿势。 首先,以后可能不需要重新建图+拓扑排序+染色了。 看了赵爽的论文。 下面说的简略一些,详细情况可自行百度。 首先是重新建图,重新建图为的是求拓扑序,以便于染色,出答案。而本身我们tarjan完的就是个拓扑逆序的。因为每个团求出来之前,它之后的所有团肯定都求出来,否则这个团是全都
阅读全文
摘要:第一道2-SAT 题意:有N对点,给出N对点的坐标,要求找出一个最大的半径R,使得可以从每对点中选择一个点,并且这N个点以自己为圆心,半径为R的圆两两不相交。 对于2*N个点,如果两个点之间“矛盾”,即两个圆相交,就连一条边。意思是:我选了这个点之后,无法选另外一组的某个点,就只能选某个点的兄弟点。
阅读全文
摘要:题意: N(2<N<100) 各学校之间有单向的网络,每个学校得到一套软件后,可以通过单向网络向周边的学校传输,问题1:初始至少需要向多少个学校发放软件,使得网络内所有的学校 最终都能得到软件。2,至少需要添加几条传输线路(边),使任意向一个学校发放软件后,经过若干次传送,网络内所有的学校最终都能得
阅读全文
摘要:2SAT中的重要知识 以前学过忘记存了。现在存一发免得再忘了
阅读全文
摘要:在给的点中选出一对对点,让每两个点的距离和最大 乱搞,做过这种关于类型的,这次算比较简单的。
阅读全文
摘要:求随机dfs序的期望。 我们来看到一个点之后是什么情况。 一个点p有很多儿子,其中一个是x; 如果要求x的期望,那么先看: 如果从父亲直接到这个点,那就是父亲的期望加一; 如果还走其他的点,那么最后一步肯定还是要加一(因为你总要花一步从别的店跳过来),所以无论怎样都要父亲的期望加一。剩下来再看,如果
阅读全文
摘要:把一个父亲数组变成棵树的最小改动。 一想就只有环或者森林,用时间戳,每次爆搜就行,要么剖环,要么连树。
阅读全文
摘要:给你阴阳球各n个,某些阳球只要周围有一个阴球,就会变暗,问最后至少要变暗多少个。 看了题解,说是全排列阴球,因为成环,所以就能变成8!复杂度,就能跑了。 然后每种情况,如果一个阳球碰上周围两个阴球都不变暗,那么久能放在这个位置,此时的最大匹配就是这种方案,最大可以放,并且不变暗的,个数。拿n一减,完
阅读全文
摘要:二分图判断+二分 给一堆点、边,两两之间有一个值,让分成两个集合,让内部最大边权最小。 排序+二分+二分图判定 存个二分图模板#include <iostream>#include <functional>#include <algorithm>#include <complex>#include
阅读全文
摘要:#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#include <vector>#include <map>#include <set>#include <stack>#include <queue>#inc
阅读全文
摘要:#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#include <vector>#include <map>#include <set>#include <stack>#include <queue>#inc
阅读全文
摘要:prime+邻接矩阵模板 #include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#include <vector>#include <map>#include <set>#include <stack>#includ
阅读全文
摘要:话不多说,邻接表+队列优化。 #include <cstdio>#include <iostream>#include <cmath>#include <cstring>#include <cstdlib>#include <algorithm>#include <queue>using names
阅读全文