随笔分类 - 图论
摘要:https://vjudge.net/problem/POJ-3155 最大密度子图模板,在求max(|E|-g|V|)采用了Maxflow(n,n+m)的建图方法。 精度上,要求密度的精度高于最小割的精度。 1 #include<cstdio> 2 #include<cstring> 3 #inc
阅读全文
摘要:https://www.luogu.com.cn/problem/P4174 见https://wenku.baidu.com/view/87ecda38376baf1ffc4fad25.html第24-28页,有Maxflow(n,n+m)版的模型。 1 #include<cstdio> 2 #i
阅读全文
摘要:https://vjudge.net/problem/SPOJ-OPTM 每位分别考虑后,相当于给所有点分两类,不同类之间的边会产生花费。即求最小割,源点向所有已知的这位为0的点连无穷边,所有已知的这位为1的点向汇点连无穷边。为了使总和尽量小,跑完最小割后,从汇点开始dfs找出残留网络种能到达汇点的
阅读全文
摘要:https://zoj.pintia.cn/problem-sets/91827364500/problems/91827366175 分数规划+最小割。 1 #include<cstdio> 2 #include<cstring> 3 #include<cstdlib> 4 #include<al
阅读全文
摘要:$n \leq 250000$的树有边权,每次问:使$k$个点无法到达根节点至少要割边权总和多少的边。$k$总和$\leq 500000$。 虚树模板。 1 //#include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 //#includ
阅读全文
摘要:$n,m \leq 1e9$,$n*m$的网格中有$c \leq 1e5$个是黑的,其他是白的。问:使至少两个白的不连通,最少需要再把几个白的涂黑。 可以发现答案是-1,0,1,2啦。-1要么没白的,要么一个白的,要么两个相邻白的。如果是两个不相邻白的答案就是0,这些可以特判掉。 其他的情况,可以建
阅读全文
摘要:长这么大这种题不能1A。。 $n \leq 50000$的abcx序列,要你构造同样长一个ABC序列满足:如果这一位是a那就不能填A;如果是b不能填B;如果是c不能填C;否则随意。并满足$m \leq 100000$个限制:如果第$i$位填了$p$,那么第$j$位一定要填$q$。$x$个数不超过8.
阅读全文
摘要:$n \leq 50000$个人,每个人有$K \leq 10$个属性,现对每一个前缀问:进行比赛,每次任意两人比任意属性,小的淘汰(保证同一属性不会出现两个相同的数),最终有几个人有可能获胜。 明显是一个竞赛图了,缩完点就是求拓扑序最高那个强连通分量的大小。现在要一个一个把人加入。 可以观察到,缩
阅读全文
摘要:$n \leq 100000$的树支持$m \leq 100000$个操作:每个点有两个权值$a$和$b$,一,链加;二,链上$b_i+=a_i*d$,问最后所有的$b_i$。 这个题我在看到之前有想过链上的情况,当时以为标记是O(1)下传的就没细想。现在看来需要一些特殊技巧。首先链剖加线段树。 方
阅读全文
摘要:$n \leq 5e5,m \leq 3e6$的DAG,问删掉某个点的最长路最短是多少,并输出这个点。 采用“整体去部分”的思想。先建一源一汇,源连所有点,所有点连汇。$f_i$--从$s$到$i$的最短路;$h_i$--从$i$到$t$的最短路,这俩数组拓扑一下可以算出。一条边对答案有$f_u+1
阅读全文
摘要:$n \leq 40$个人玩$m \leq 10$台游戏机,每台游戏机一秒内只能一人玩,每人一秒内只能玩一台。每台游戏机有个价格,在规定总价格内可以把一部分游戏机复制一次,每台只能复制一次。给每个人对在每台游戏机上的需求时间,求一种方案使得所有玩游戏结束的时间尽量早。每个人每台游戏需求时间$\leq
阅读全文
摘要:$n \leq 100000$个点,$m \leq 2000000$条边,给点分组,两个点能在不同组必须两点之间有边,问最多分多少组以及每组人数。 条件翻译下变成两点之间没边必须在一个组,于是就可以$n^2\alpha(n)$轻松过掉这题。 好的严肃。把复杂度转到$m$上,想一种跟$m$有关的暴力:
阅读全文
摘要:突然很想做POI。。 $n \leq 20000,m \leq 200000$的无向边权图无自环重边,问:从1出发到$n$,必须经过$2,3,...,k+1$,$k \leq 20$,且满足$q$个限制:在访问$x$后一定要访问$y$,$x,y<=k+1$,这样的最短路。 听说卡时间。我:????
阅读全文
摘要:$n \leq 2000$个东西要搬走,两个人分别能搬$a$和$b$件东西,给两个人搬走每种东西的概率,问最优决策下期望搬走多少东西。 一个人搬贡献:$p_i$,另一个人搬贡献:$q_i$,两人一起搬:$p_i+q_i-p_iq_i$。 $s$->两个人:流量分别$a,b$,费用0;两个人->每件东
阅读全文
摘要:$n \leq 50$的图,求其一个子图,使三元环数除以点数最大,输出这个值。 emmmm除法的话上分数规划,$max\frac{三元环}{点}=t$,$max(三元环-t点)=0$。好的,二分这个$t$,然后选一个三元环必须选三个点,可以建最大权闭合子图判定。
阅读全文
摘要:模板。 1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 //#include<time.h> 5 //#include<complex> 6 //#include<set> 7 //#include<queue> 8 #in
阅读全文
摘要:$n \leq 50$的两棵树,同编号的点有同个点权,问如何选一个点集,使得这个点集里的点在两棵树内都连通,且总点权最大,输出最大点权和。 枚举一个点在答案里,然后把树以它为根,此时选儿子一定要选父亲,构成最大权闭合子图。 1 #include<iostream> 2 #include<cstrin
阅读全文
摘要:$n \leq 500$条平面上的线段,问一种挑选方法,使得不存在直线$x=p$与挑选的直线有超过$k$个交点,且选得的直线总长度最长。 横坐标每个点开一个点,一条线段就把对应横坐标连一条容量一费用(-长度)的边;点$x$向点$x+1$连一条容量$k$费用0的边。这里的$k$边限制的是直线上其他不经
阅读全文
摘要:最小点覆盖=最小割 最大独立集与最小点覆盖互补 最大权闭合子图:源正负汇指条件
阅读全文
摘要:大中午看这题有点饿。。 $n \leq 100$的区间。。。不管了好长自己看在这 挺简单的最大权闭合子图。首先一定要选小区间才能选大区间,所以大区间向小区间连边。 然后选一个食物一定要先选它的代号的代价,于是代号建点,食物连代号。代号费用$mx^2$。 然后一个食物一点代价,把它自己的代价减去$a_
阅读全文

浙公网安备 33010602011771号