![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图论
文章平均质量分 71
心若为城
这个作者很懒,什么都没留下…
展开
-
二分图(一)
二分图的有关概念原创 2015-11-23 13:45:15 · 812 阅读 · 1 评论 -
图论填坑系列TAT
这篇文章禁止以任何形式转载。 这篇文章禁止以任何形式转载。 这篇文章禁止以任何形式转载。dij我现在还不会我会说嘛…… 虽然说暂时死不了。 Tarjan算法 首先我们要知道这个东西可以把有向图缩掉强连通分量后变成DAG。 有向图强连通分量:在有向图G中,如果两个顶点vi,vj间(vi>vj)有一条从vi到vj的有向路径,同时还有一条从vj到vi的有向路径,则称两个顶点强连通(strong原创 2016-10-24 23:18:24 · 396 阅读 · 0 评论 -
奥妙重重的网络流
这两个代码都是BZOJ1532的代码,仅仅是建图的差距就导致了4倍时间差。至今不懂为什么,先留下代码。#include <bits/stdc++.h>#define v edge[i].to#define RepG(i,x) for(int i = head[x];~ i;i = edge[i].next)#define fl edge[i].f#define vfl edge[i ^ 1]原创 2016-08-30 15:26:58 · 320 阅读 · 0 评论 -
差分约束<基础题练习><我是图论渣TAT>
今天有位神犇问我差分约束那道题怎么做QAQ 然而我这么弱怎么可能会那道题QAQ 所以先来介绍下什么是差分约束:最短路: dis[v] <= dis[x] + w(x,v); 那么我们考虑: 如果有一些约束,形如: b−a<=k1b - a <= k_1 c−b<=k2c - b <= k_2 c−a<=k3c - a <= k_3 求c - a的最大值. 那么怎么做呢? 考虑原创 2016-05-29 23:17:54 · 328 阅读 · 0 评论 -
日常卖萌(1/1)
就要期中考试了QAQ 来看一道CTSC题: 首先题意是选择一些点使得这些点任意两点皆不可达。 即求最大反链长度。 在DAG中。 最大反链: 反链为一个点集P,对于在P集合任意的两个点u,v,满足u - > v == NULL && v - > u == NULL,则P集合元素个数就是反链长度。 最大反链长度当然就是最大的那个P集合。 最小链覆盖: 在图原创 2016-04-20 20:46:57 · 361 阅读 · 0 评论 -
最小费用最大流<模板大法好QAQ>
先贴一个神犇送我的模板QAQbool bfs() // 求最短路,并且查看是否存在可增广路 { Rep_0(i,N)dis[i] = inf; //初始化费用 int h,t; dis[q[h = t = 1] = S] = 0,inq[S] = 1,flw[S] = inf; while(h <= t) { int x = q[h ++]原创 2016-05-27 11:00:29 · 336 阅读 · 0 评论 -
网络流相关
Prog0.原创 2016-05-12 15:25:23 · 257 阅读 · 0 评论 -
关于网络流的一些经验(一)
前几天做了一些题: NOI2006 最大获利: 『其实最大权闭合图我是分类讨论出来的』 题意:每个点有代价,某些特定的两个点组合会产生一个收益,求最大收益、、、 一开始觉得是一个裸的最大流,但是显然不能知道怎么建出最大流的收益、、、 于是考虑逆向思维:看题解 看到最小割之后把网页关了『然后就做了个奇葩思路』。 考虑我已经获得了总的组合收益,现在有一些收益我不能获得,那么使得不能获得的收原创 2016-03-02 10:38:26 · 496 阅读 · 0 评论 -
网络流(dinic)
网络流原创 2016-01-26 08:41:01 · 494 阅读 · 0 评论 -
二分图(二)——匈牙利算法
二分图之匈牙利算法原创 2015-11-23 15:40:18 · 1000 阅读 · 1 评论 -
二分图(三)——KM算法
KM算法手工模拟原创 2015-11-23 18:37:02 · 7254 阅读 · 1 评论 -
LCA算法(一)
LCA原创 2015-11-25 20:15:19 · 627 阅读 · 0 评论 -
二分图的匈牙利和KM算法感受
二分图匹配的感受原创 2015-11-24 20:22:45 · 1633 阅读 · 1 评论 -
bzoj2725
先跑一下最短路图。 然后随便拎出来一条路径,把它叫做树边。 之后用不在这条路径的边去更新信息即可。 那么我们考虑这个路径P。 其中(u,v)在路径P上。 如果我们不删除(u,v)而是删除非路径上的边,那么我们就会直接输出。 如果(u,v)在路径上,那么我们肯定要选这种东西去规避(u,v): 原路径是:S->x’->..->(u->v)->..->y’->T 现在的路径:S->x’->原创 2016-11-16 22:56:06 · 637 阅读 · 0 评论