————图论————
hanyuweining
明日はきっと 明日はきっと 仆が世界の中心なので
展开
-
[网络流24题-13]餐巾计划问题
餐巾计划问题 写网络流写的头昏脑涨QAQ大概还是太菜了 比较有趣的建图题 对于每一个点拆点拆成早晨和晚上分别为 i 和 i' 1. s -> i (r,p) 每天早晨可以买最多r条新餐巾 一条p分 2. s -> i' (r,0) 每天用剩下r条脏餐巾 没有代价 3. i -> t (r,0) 每天要用r条干净餐巾 没有代价 4. i' -> i+m (inf...原创 2018-11-29 08:03:52 · 146 阅读 · 0 评论 -
[网络流24题-1]飞行员配对方案问题
飞行员配对方案 裸的二分图匹配。匈牙利和dinic均可过。 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; bool bian[110][110],used[110]; int result[110],n,m; bool dfs(int now) {...原创 2018-11-22 17:58:35 · 159 阅读 · 0 评论 -
网络流24题题解
此篇题解按照做题顺序更新(应该就是难度顺序) ——————upd 2018-11-20 T1.飞行员配对方案问题 T2.运输问题 ——以上为囤货。 T3.软件补丁问题 ——————upd2018-11-21 T4.负载平衡问题 ——————upd2018-11-22 T5.魔术球问题 ——————upd2018-11-25 T6.孤岛营救问题 T7.圆桌问题 ——————...原创 2018-11-21 21:22:04 · 141 阅读 · 2 评论 -
洛谷P4015 运输问题
数学一本通例题。 题面描述 公司有 个仓库和 个零售商店。第个仓库有 个单位的货物;第个零售商店需要 个单位的货物。 货物供需平衡,即从第个仓库运送每单位货物到第个零售商店的费用为 。 试设计一个将仓库中所有货物运送到零售商店的运输方案,使总运输费用最少最多。 一本通上给出了建模。如下。 求解方程,并满足下面两个约束条件。 1. 2. 其实是一个线性规划的模型。<...原创 2018-09-06 14:58:41 · 187 阅读 · 0 评论 -
UVA1411 Ants
想出的一道题竟然是原题QAQ 非常有趣的一个题 根据三角形两边之和大于第三边 所以相交的线段一定是比不相交的线段要长的 所以直接二分图构图 最小费用最大流即可 (我不管我不管我要把这个出到NOIP膜你赛) 代码如下。 #include<cstdio> #include<cstring> #include<algorithm> #include<...原创 2018-12-01 15:49:39 · 213 阅读 · 2 评论 -
CF 36E Two Paths
传送门 真实的自闭= =+ 考试的时候老师明明说了可以路径为空T^T 然后光荣的挂掉了 20分的链【明明是最送分的】 上来就看出来欧拉回路了嘛 然后思考了一下大概奇点配个对 删一条简单路径剩下的跑欧拉路径就好了嘛 然后就冒出来了这个东西 如果简单路径删了的话 图就不连通了= =|| 心态崩塌【后来发现数据没卡这玩意T^T】 想新加边 但是发现这样就变成三段路径了= =|| 然后...原创 2018-12-12 15:33:16 · 112 阅读 · 0 评论 -
BZOJ3894 文理分科
传送门 神仙建模。(想不出想不出)好早之前听的一道题了,完全没有印象了QAQ 就是最小割模型肯定比较好看出来 然后呢对于处理一个人周围的都选的一样的话,那么就应该是新建一个全文/理点,这几个人连inf,然后收益连源汇就可以。 (网络流要多大胆建点!) 查了好久发现cnt没赋1【猛虎落泪】 #include<cstdio> #include<cstring> #...原创 2018-12-08 17:16:50 · 150 阅读 · 4 评论 -
【学习笔记】圆方树(CF487E Tourists)
终于学了圆方树啦~\(≧▽≦)/~ 感谢y_immortal学长的博客和帮助 把他的博客挂在这里~ 点我传送到巨佬的博客QwQ! 首先我们来介绍一下圆方树能干什么呢qwq 1.将图上问题简化到树上问题 2.一般是路径并 3.资磁修改! 然后我们就可以步入正题来学习圆方树啦~ ——超良心圆方树教程!—— 这里是一个前缀芝士清单! 1.Tarjan求点双连通分量 2....原创 2018-12-13 11:32:04 · 161 阅读 · 0 评论 -
BZOJ5329 SDOI2018 战略游戏
传送门 补的第一道SDOI2018? 圆方树上建虚树 欢乐多又多【大雾 大概就是求对于S个点 问删掉一个点使它们不完全连通的方案数 那么我们可以看出 这个其实就是求两两路径并上的割点数量 那么 圆方树来解决是最好的办法【好像也没有别的办法 然后我们发现如果两两统计LCA的话,复杂度是S^2无法接受 可以看出 这个过程和虚树的构建过程十分相似 所以 我们就可以建出虚树 统计答案即可 ...原创 2018-12-14 10:37:12 · 127 阅读 · 0 评论 -
SPOJ1693 COCONUTS - Coconuts
传送门[洛谷] 自闭QAQ 什么玩意QAQ 不是很理解到底在干啥 问了巨佬以后大概是这个样子的 可以看出是最小割模型 对于每一个人 反悔的话就是代价+1 那么连接(s,i) (i,t)分别表示他最后选择赞同还是反对 根据初始状态来填代价 然后针对基友关系 他们之间连 代价为1的无向边 为什么是无向边呢 是因为 他们无论双方在哪个方向反对 只要不属于同一边的话就是有代价的 E...原创 2018-12-14 14:44:29 · 163 阅读 · 1 评论 -
SPOJ287 NETADMIN - Smart Network Administrator
传送门[洛谷] 常见套路? 关键点连新建汇点 流量1 源点1 原图中的边 二分流量。 二分+判满流 做完了。 附代码。 #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #include<queue> #define inf 2002...原创 2018-12-14 16:40:36 · 180 阅读 · 0 评论 -
AGC005D ~K Perm Counting
~K Perm Counting 神仙题++ 转二分图+容斥比较好想 主要是最后的合并统计怎么做方便比较有趣 ptx大爷的博客 戳我 把二分图拆成链的想法很好 mark一下qwq 注意容斥的时候转longlong= = #include<cstdio> #include<cstring> #include<algorithm> #includ...原创 2019-01-02 15:21:12 · 107 阅读 · 0 评论 -
BZOJ3331 BJOI2013 压力
考前挣扎 圆方树这么早就出现了嘛。。。 要求每个点必须被经过的次数 所以就是路径上的割点/端点++ 由于圆方树上所有非叶子圆点都是割点 所以就是树上差分就可以辣。 实现的时候出了一点小问题。 就是这里 if(low[y] == dfn[x]) { int r = ++poi,w; do { w = stk.top(); stk.pop(); ...原创 2019-01-18 08:10:52 · 309 阅读 · 0 评论 -
BZOJ2132 圈地计划
传送~ 来自y_immortal学长的网络流推荐2333 建模比较神仙qwq 首先可以建立最小割模型 ->二选一 就是我们处理不同的贡献不好处理 那么我们考虑怎么把它变成相同的贡献 对于原图我们进行黑白染色 然后如果一个点属于T集我们让它反色就可以做到相同的有贡献 那么很明显这个贡献是双向的 对于两个点之间的贡献是相加的 所以我们这样做最小割就可以辣~ 代码。 //Lov...原创 2019-01-18 15:26:00 · 173 阅读 · 0 评论 -
[网络流24题-2]运输问题
运输问题 《数学一本通》例题。直接最小费用最大流。第二问最大费用最大流可以让费用取反然后跑最小费用最大流。 之后研究过一下这个问题如果销量和产量不等的话可以建一个辅助点费用为0即可。 #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> #include&...原创 2018-11-22 18:01:40 · 727 阅读 · 0 评论 -
[网络流24题-3]软件补丁问题
软件补丁问题 “网络流”好题。。。 为啥这个题会出现在网络流24题里呢QAQ我真的按照网络流想的建了一个2^n个点的2^n*n边的图。。。然后一想网络流再怎么跑都跑不出1e6点数1e6边数的非分层图吧。。。弃疗看题解md怎么是状压+最短路qaq 就是状压状态然后dp因为1e6的状态每次转移又有100所以最短路更新就好了。 附代码。 #include<algorithm> #...原创 2018-11-22 18:03:45 · 398 阅读 · 0 评论 -
[网络流24题-4]负载平衡问题
负载平衡问题 又混进来了奇怪的题???我一看这不就是糖果传递???一脸懵逼的我点开题解发现竟然可以MFMC! 不过糖果传递貌似是这个的加强版(雾)【明明可以线性贪心为什么要网络流!】 看了一下题解大概是这个样子滴。 1.相邻的仓库之间连(inf,1) 2.大于平均值连原点(ai-ave,0) 3.小于平均值连汇点(ave-ai,0) 然后跑MFMC就好了啊w [写了一堆锅的MCMF...原创 2018-11-22 18:05:40 · 203 阅读 · 0 评论 -
SGU438 The Glorious Karlutka River =)
传送门 sgu原来搬到cf了呀点了好几个链接才找到233 传说中的动态流(?) 反正很暴力就对了QwQ 有容量限制->拆点 对于每个点拆成入点和出点 时间限制->分层 对于每个时刻的每个石头都建点 所以源点连最开始的到达的石头的入点 然后每个可以到达的出点连汇点 然后每个时刻的入点出点之间连接流量为C 然后可以互相跳的连inf 枚举时刻在残存网络上继续流可以了 直到一个...原创 2018-11-30 18:50:43 · 176 阅读 · 0 评论 -
[网络流24题-12]最小路径覆盖问题
最小路径覆盖问题 有点蠢。。。结论题。。。(还是魔术球问题的一个部分) DAG最小路径覆盖直接拆点建二分图然后顶点数-最大匹配就可以了。。。 其他相关结论见魔术球问题(大雾) 大体相当于“找出路”。 蠢蠢的还RE了一发QAQ 附代码。 #include<cstdio> #include<cstring> #include<algorithm> #...原创 2018-11-27 13:54:25 · 106 阅读 · 0 评论 -
[网络流24题-11]太空飞行问题
太空飞行计划问题 貌似叫最大权闭合子图?(反正这些高端大气上档次的名词我都不知道) 建模比较有趣 先想最大流 大概是源连实验 实验连仪器 仪器连汇 然后发现无论怎么分配都做不到捆绑并只计算一次费用 弃疗 最小费用最大流 怎么建都是所有点都选才是最大流 更不靠谱 弃疗 最小割(不要问我为什么没想上下界 因为我还没学会) 我们发现按照上述最大流的建图方法 然后实验和仪器之间流量为inf 这...原创 2018-11-27 11:37:39 · 159 阅读 · 0 评论 -
POJ2391 Ombrophobic Bovines
传送门 发现惊天大错误QAQ T上天然后发现自己的板子是假的QAQ 就是这一句 if(!cur) return flow; 我之前一直写的是break。。。 注意实际意义 我们的dep[x]=-1是当前已经流不满无法増广了所以才把它设为-1不再增广 而流满了表示还可以继续增广所以直接return 我以前一直写的假板子直到这个题T飞。。。一个爆哭。。。 回归正传 这个题...原创 2018-11-27 09:27:56 · 210 阅读 · 0 评论 -
[网络流24题-10]分配问题
分配问题 裸的MFMC 直接源连人 人连工 工连汇 用1限制配对 然后直接MFMC就好啦 终于自己建了个模然后s和t建小了QAQ 附代码。 #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #include<queue> #define...原创 2018-11-26 21:01:48 · 195 阅读 · 0 评论 -
POJ1637 Sightseeing Tour
传送门 建模非常神奇的脑子题(不适合我) 一句话题意:混合图欧拉回路 首先我们知道如果一个图存在欧拉图的话那么每个点的入度要等于出度 那么对于单向边我们可以确定下来入度出度可以直接加到点上然后删掉 双向边我们需要给它定向来决定是否存在欧拉回路 我们需要让每个点达到流量平衡也就是入度=出度 我们先任意定向使每个点现在有一个确定的入度和出度 然后我们需要重定向是流量平衡 所以我们将入...原创 2018-11-26 19:56:04 · 122 阅读 · 0 评论 -
[网络流24题-9]试题库问题
试题库问题 我以后!一定!好好读题!(流下悲伤的泪水) 为了避免更多小可爱误解这道题的题意 我重新复述一遍这个题的题意TAT 我们现在有n道题并且每道题有p个属性可以归属 共计k个属性 要求对于每一种属性选出ai道题 首先一道题只能归属一个属性 所有属性之间互相独立 TAT 我在来偷偷说说我读的版本。。。 每一道题选了对于他所属的p个属性都有1的贡献 一共要选m道题 问你方案TAT...原创 2018-11-26 19:08:44 · 165 阅读 · 0 评论 -
POJ1149PIGS
传送门 貌似是最大流建图优化入门题(可惜我还是不会) 最暴力的建图当然是源点连每个猪圈然后猪圈需要拆成n个点分给每个人这个必定是跑不过的 所以我们可以进行优化 很明显没有被动过的猪圈一直是不变的可以不用拆 然后两个顾客之间开了同一扇门可以互通有无的话那么他们之间可以连一条inf的边来进行这个操作 我们发现一个人打开多个没被打开过的猪圈可以直接把这些猪圈合并起来 所以最后我们从源点连出...原创 2018-11-26 16:24:06 · 106 阅读 · 0 评论 -
[网络流24题-8]汽车加油行驶问题
汽车加油行驶问题 分层图最短路(板子题?总之我不会) 看着就很MFMC但是实际上并不是QAQ 看题解第一句话分层就懂了QAQ 大概就是对于一个平面图有多种情况互相转移,那么我们可以对图进行分层 比如说这个题显然可以用油量进行分层 对于几个限制 1.k条边在建图的时候就是油量-1连边就可以了 2.b在建图的同时也可以直接连边 3.加油点的所有出边必须是从油量为k连出去 枚举f(0~...原创 2018-11-26 15:23:18 · 256 阅读 · 0 评论 -
[网络流24题-7]圆桌问题
圆桌问题 就是比较裸的一个网络流qwq 直接建源点汇点 源点连单位流量Ci 桌子连汇点流量Ri 单位桌子两两连边流量为1限流就可以了 然后输出方案就看一下流了这条边就是坐了这个桌子就吼了 #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #incl...原创 2018-11-25 21:30:05 · 130 阅读 · 0 评论 -
[网络流24题-6]孤岛营救问题
孤岛营救问题 为什么又是奇奇怪怪的混进来的题啊QAQ 又没想出网络流解法啊QAQ 看见P是10就又状压了吖QwQ bfs跑一遍就吼了w 为啥子网络流24题总是状压+最短路/bfs啊QAQ 哦对记得门和墙要建双向边[哭晕] #include<cstdio> #include<algorithm> #include<cstring> #include...原创 2018-11-25 10:47:03 · 271 阅读 · 0 评论 -
BZOJ1001[BeiJing2006]狼抓兔子
非常有意思的一道题(兔子才没有那么蠢) 首先最小割模型很好看出来。但是点数1e6边数1e6的话不加些7788的优化大概是过不去的(不可能过去的这辈子不可能过去的就算你卡常的奇技淫巧高超良心出题人肯定还是要有数据卡你的) 然后我们就需要探索这个题的深层性质 我们发现它是一个边数很少的图,并且还是平面图。 平面图最小割=对偶图最短路!!! 好了我们来复习一下平面图的相关性质(摘自:周冬《浅析...原创 2018-11-23 22:18:40 · 256 阅读 · 0 评论 -
[网络流24题-5]魔术球问题
魔术球问题 之前听过但是忘了(雾) 重新学习了一发。整理如下。 我们需要用到一些二分图相关的前提知识。 最大匹配:一个图所有匹配中,所含匹配边数最多的匹配,称为这个图的最大匹配。 完美匹配:一个图中所有的点都存在于匹配集合中。所以完美匹配一定是最大匹配。 二分图一定有最大匹配而不一定存在完美匹配。 点覆盖:对于每条边的两个端点至少有一个在被覆盖集合中。 结论:最小点覆盖...原创 2018-11-22 19:56:27 · 272 阅读 · 0 评论 -
BZOJ2965 保护古迹
非常带劲之计算几何 写的头晕= = 就是平面图转对偶图然后最小割 由于p非常小我们枚举所有保护状态然后割一下 建图真的烦 就是把区域划分出来看一下每一个古迹点是否被小区域包含【好像也可以写点定位】 然后我好像判左右叉积又双叒叕的写反了? 整个画出图来然后发现好像没建错图= = 然后把!删掉竟然过了= =于是愉快改成onright= = 区域划分就是双向直线然后每次找反向的极角的最近的...原创 2019-01-09 10:53:36 · 224 阅读 · 3 评论