图论
Junwinds
中国科学院大学
展开
-
[SCOI2008]天平【差分约束+Floyd】
洛谷P2474SOL发现一道不板子的差分约束看到这个数据范围,我们可以想到一个暴力:枚举另外两个(记为C,DC,DC,D),判断是否满足A+B<C+DA+B\lt C+DA+B<C+D,A+B>C+DA+B\gt C+DA+B>C+D,A+B=C+DA+B =C+DA+B=C+D.转换一下,A−C>D−C ∣∣ A−D>C−BA-C...原创 2019-11-07 10:13:44 · 174 阅读 · 0 评论 -
[SDOI2019]热闹又尴尬的聚会
LOJ3113SOL对于题目的p,qp,qp,q的限制,我们可以转化成(p+1)(q+1)>n(p+1)(q+1)\gt n(p+1)(q+1)>n,q是求最大独立集,但是此题不是二分图,无法用网络流等方式。我们需要最大化地求p,qp,qp,q。构造方法先贪心地求出最大的ppp。不妨把“加点”的思路转化为“删点“,即已经有一个合法的图,我们考虑让它更大。删除度数最小的...原创 2019-10-31 19:24:11 · 136 阅读 · 0 评论 -
LOJ3057[HNOI2019]校园旅行【dp+优化建图】
LOJ3057SOL30pts从构造路径的角度思考,难以入手。总点数能实现O(n2)O(n^2)O(n2)算法,转换思路,从中间向两边接点,构造回文串。设f[i][j]f[i][j]f[i][j]表示i,ji,ji,j点对能否作为回文路径的两端。故枚举i,ji,ji,j的边尝试转移。不难发现这样做总复杂度是O(m2)O(m^2)O(m2)(每一对"边"最多被拿出两次)100pt...原创 2019-10-31 11:31:48 · 134 阅读 · 0 评论 -
P4426 [HNOI2018] 毒瘤 【虚树+dp / DDP】
P4426SOL敲了3小时虚树,突然发现这是一道ddp板题。。。看来最近和板子挺有缘的。。transfer the probelem:\text{transfer\ the\ probelem}:transfer the probelem:在有10条多余边的树上求点独立集个数。基于原树思考。先求出n−1n-1n−1条边的fff值。剩下的边最...原创 2019-10-24 22:14:56 · 153 阅读 · 0 评论 -
P4103 [HEOI2014]大工程【虚树】
洛谷SOL虚树板题一道。。。个人觉得这题比 “消耗战”更适合练板子(树形dp更为简单)说正解。注意到∑∣p∣≤2e6\sum |p|\le2e6∑∣p∣≤2e6,这提示我们建一颗虚树。建好后,2和3问就是求一个树上最短路,最长路,不再赘述。简单说一下1,我们对于每一条边统计有多少点对经过它。具体的,树形dp的时候算出,即为siz[son]∗(tot−siz[son)siz[son...原创 2019-10-23 21:59:32 · 121 阅读 · 0 评论 -
SCU 4444 Travel 【次完全图最短路】
vjudge题面地址SOL对于 a<b and Link[1][n]==0a<b\ and\ Link[1][n]==0a<b and Link[1][n]==0,对m条边正向bfs即可;对于 a>b and Link[1][n]==1a>b\ and\ Link[...原创 2019-09-16 09:51:55 · 191 阅读 · 0 评论 -
Loj3087 [GXOI / GZOI2019] 旅行者 【最短路扩展】
题面SOL法一 :二进制分组 O(mlog2n)O(mlog^2n)O(mlog2n)预计得分:50-60按二进制每一位 0/1 将特殊点分成两组,一组跑最短路,一组统计。一次的答案为两组之间的最小值。由于任意两个不同的数,二进制总有一位不同,所以总有一个分组方式能够将两个特殊点分开。法二: 两次最短路+染色 O(mlogn)O(mlogn)O(mlogn)预计得分:100把特殊...原创 2019-09-25 19:12:23 · 132 阅读 · 0 评论 -
P2056 [ZJOI2007] 捉迷藏 【动态点分治】
题面SOL树的直径? 如果有 ∣S∣≤1e6|S|\le1e6∣S∣≤1e6 之类的,说不定可以虚树做。然鹅并没有。另一种O(nlogn)O(nlogn)O(nlogn)讨论完树中所有路径的做法当然是点分治了。只是此题需要支持修改,于是记录一下点分治时候的fafafa,每个分治重心维护一个数据结构,我们便有了一个O(nlogn+mlog2n)O(nlogn+mlog^2n)O(nlogn...原创 2019-09-29 14:53:30 · 144 阅读 · 0 评论 -
P5331[SNOI2019]通信【费用流+优化建图】
题面SOL首先去确定用费用流求解。对于每一个点的贡献,只和向谁连边有关,和后面的点无关。所以把每个点拆成 入点,出点。1.将S和入点连边,cap=1,w=0cap=1,w=0cap=1,w=02.入点和T连一边,cap=1,w=Wcap=1,w=Wcap=1,w=W3.出点和T连边:cap=1,w=0cap=1,w=0cap=1,w=04.入点和前i−1i-1i−1个点的出点连...原创 2019-10-10 12:07:02 · 302 阅读 · 1 评论 -
2-SAT 例题练习记录
UVa1146CODE#include<bits/stdc++.h>using namespace std;#define sf scanf#define pf printfconst int N=4e3+10;int low[N],dfn[N],tot=0,CN=0,stk[N],top=0,instk[N],col[N],n;vector <int> ...原创 2019-06-09 15:36:27 · 183 阅读 · 0 评论 -
#3696 tree【最小生成树】
描述给你一个无向带权连通图,每条边是黑色或白色。让你求一棵最小权的恰好有need条白色边的生成树。 题目保证有解。输入第一行V,E,need分别表示点数,边数和需要的白色边数。接下来E行每行s,t,c,col表示这边的端点(点从0开始标号),边权,颜色(0白色1黑色)输出一行表示所求生成树的边权和。样例输入 [复制]2 2 10 1 1 10 1 2 0样例输出 [复制]...原创 2019-02-12 22:52:34 · 220 阅读 · 0 评论 -
【专题总结】 网络流
day1 (最大流)一、问题导向:1)有网络模型2)问题的可行性3)n^2迷之复杂度二、模板理解1)EK算法一个基础:增广路。只要能实现更正之前的操作,枚举完所有情况得到的一定是最优解(之一)更正实现:建立反向弧(增减与原边相反的反向边)e[1]== u-&gt;v c(capacity)e[2]== v-&gt;u 0为何反向弧能实现更改?可以和匈牙利算法相...原创 2019-01-25 20:08:05 · 286 阅读 · 0 评论 -
#2861 城市交易 【最大瓶颈路+贪心】
#2861 城市交易【描述】L在N个不同的城市做生意,他收到了N个不同城市的N份交易订单。在这N个城市之间有一些低速公路,这些低速公路都有自己的一个载重上限,这限制了你在这条公路上前进的时候能够携带的货物数量。除了低速公路之外,还有些城市修了慢速铁路站。对于修了慢速铁路站的城市,你可以乘坐慢速火车在这些城市之间往返而不受载重上限的限制。L现在要按照顺序来处理这N份订单,他可以自由选择自己的路...原创 2019-01-26 13:47:09 · 135 阅读 · 1 评论 -
Intervals (Poj1201/TYVJ 1415)差分约束经典题
题面:////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////给定 n 个闭区间[ai,bi]和n 个整数ci。你需要构造一个整数集合 Z,使得对于任意 i∈[1,n],Z 中满足ai≤x≤bi 的整数x...原创 2019-01-22 21:01:55 · 285 阅读 · 0 评论 -
#1444 [SCOI2011]糖果 【差分约束】
题面:///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////幼儿园里有N个小朋友,lxhgww老师现在想要给这些小朋友们分配糖果,要求每个小朋友都要分到糖果。但是小朋友们也有嫉妒心,总是会提出一些要求,比...原创 2019-01-22 21:06:06 · 122 阅读 · 0 评论 -
【图论】最小生成树计数【理解+学习】
描述现在给出了一个简单无向加权图。你不满足于求出这个图的最小生成树,而希望知道这个图中有多少个不同的 最小生成树。(如果两颗最小生成树中至少有一条边不同,则这两个最小生成树就是不同的)。由于不同的最小生 成树可能很多,所以你只需要输出方案数对31011的模就可以了。输入 第一行包含两个数,n和m,其中1&lt;=n&lt;=100; 1&lt;=m&lt;=1000; 表示该无向图的节点数和...原创 2019-02-06 23:16:09 · 785 阅读 · 0 评论 -
「网络流 24 题」餐巾计划 【网络流】
#2626 「网络流 24 题」餐巾计划描述/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////一个餐厅在相继的 n 天里,每天需用的餐巾数不尽相同。假设第 i天需要 ri 块餐巾。餐厅可以购买...原创 2019-02-07 16:32:58 · 170 阅读 · 0 评论 -
【ZJOI2010】#1762 网络扩容 【最小费用流+拆边】
描述////////////////////////////////////////////////////////////////////////////////////////////////////////////////////给定一张有向图,每条边都有一个容量C和一个扩容费用W。这里扩容费用是指将容量扩大1所需的费用。求:1、 在不扩容的情况下,1到N的最大流;2、 将1到N的最...原创 2019-02-09 17:22:05 · 124 阅读 · 0 评论 -
#1996 [HNOI2008]神奇的国度 【最大势算法】
大意:给一个无向图,用最少种颜色染色,使得相邻点颜色不同。是一个mcs问题,具体算法及详细背景参见:https://wenku.baidu.com/view/07f4be196c175f0e7cd13784.html几点注意:结论很微妙,要加深理解,就是求一个“完美序列”优化方法要注意,因为数值规模不大,用链表来实现最大值查询,少一个log(否则过不了)这种染色就是打标记嘛,一个点肯...原创 2019-02-12 20:57:24 · 382 阅读 · 0 评论 -
【差分约束系统】 layout奶牛的站位 本校woj2239
#2239 奶牛的站位Layout描述有 N 头奶牛正在排队,它们的编号为 1 到 N,约翰要给它们安排合适的排队位置,满足以下条 件:• 首先,所有奶牛要站在一条直线上。由于是排队,所以编号小的奶牛要靠前,不能让编号大的 奶牛插队。但同一个位置可以容纳多头奶牛,这是因为它们非常苗条的缘故• 奶牛喜欢和朋友靠得近点。朋友关系有 F 对,其中第 Ai 头奶牛和第 Bi 头奶牛是第 i 对朋友...原创 2019-01-24 11:27:58 · 132 阅读 · 0 评论