标准大白书式模板

 #include<stdio.h>        //大概这么多头文件昂
#include<string.h>
#include<vector>
#include<queue>
#include<algorithm>
using namespace std;
const int maxm=+; //最大点数
const int INF=0x3f3f3f3f; struct edge{ //边:起点、终点、容量、流量、单位费用
int from,to,c,f,cost;
edge(int a,int b,int m,int n,int p):from(a),to(b),c(m),f(n),cost(p){}
}; int aabs(int a){
return a>=?a:-a;
} struct MCMF{
int m,s,t;
vector<edge>e;
vector<int>g[maxm];
int dis[maxm],a[maxm],p[maxm];
bool vis[maxm]; void init(int n){ //初始化函数
for(int i=;i<=n;i++)g[i].clear();
e.clear();
} void add(int a,int b,int c,int v){ //加边函数
e.push_back(edge(a,b,c,,v));
e.push_back(edge(b,a,,,-v));
m=e.size();
g[a].push_back(m-);
g[b].push_back(m-);
} bool spfa(int& flow,int& cost){
memset(dis,0x3f,sizeof(dis));
memset(vis,,sizeof(vis));
queue<int>q;
q.push(s);
vis[s]=;
dis[s]=;
p[s]=;
a[s]=INF;
while(!q.empty()){
int u=q.front();q.pop();
vis[u]=;
for(int i=;i<g[u].size();i++){
edge tmp=e[g[u][i]];
if(dis[tmp.to]>dis[u]+tmp.cost&&tmp.c>tmp.f){
dis[tmp.to]=dis[u]+tmp.cost;
p[tmp.to]=g[u][i];
a[tmp.to]=min(a[u],tmp.c-tmp.f);
if(!vis[tmp.to]){
q.push(tmp.to);
vis[tmp.to]=;
}
}
}
}
if(dis[t]==INF)return ;
flow+=a[t];
cost+=dis[t]*a[t];
int u=t;
while(u!=s){
e[p[u]].f+=a[t];
e[p[u]^].f-=a[t];
u=e[p[u]].from;
}
return ;
} int MF(int s,int t){ 调用的计算最小费用函数
this->s=s;this->t=t;
int flow=,cost=;
while(spfa(flow,cost));
return cost;
} };

网络流--最小费用最大流MCMF模板的更多相关文章

  1. POJ 2195 - Going Home - [最小费用最大流][MCMF模板]

    题目链接:http://poj.org/problem?id=2195 Time Limit: 1000MS Memory Limit: 65536K Description On a grid ma ...

  2. 网络流(最小费用最大流):POJ 2135 Farm Tour

    Farm Tour Time Limit: 1000ms Memory Limit: 65536KB This problem will be judged on PKU. Original ID: ...

  3. poj2135最小费用最大流经典模板题

    Farm Tour Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 13509   Accepted: 5125 Descri ...

  4. HDU 6118 度度熊的交易计划(网络流-最小费用最大流)

    度度熊参与了喵哈哈村的商业大会,但是这次商业大会遇到了一个难题: 喵哈哈村以及周围的村庄可以看做是一共由n个片区,m条公路组成的地区. 由于生产能力的区别,第i个片区能够花费a[i]元生产1个商品,但 ...

  5. 把人都送到房子里的最小花费--最小费用最大流MCMF

    题意:http://acm.hdu.edu.cn/showproblem.php?pid=1533 相邻的容量为inf,费用为1,S到m容量为1,费用为0 ,H到T容量为1,费用为0. 建图跑-最小费 ...

  6. HDU 1533 最小费用最大流(模板)

    http://acm.hdu.edu.cn/showproblem.php?pid=1533 这道题直接用了模板 题意:要构建一个二分图,家对应人,连线的权值就是最短距离,求最小费用 要注意void ...

  7. 洛谷P4003 [国家集训队2017]无限之环 网络流 最小费用最大流

    题意简述 有一个\(n\times m\)棋盘,棋盘上每个格子上有一个水管.水管共有\(16\)种,用一个\(4\)位二进制数来表示当前水管向上.右.下.左有个接口.你可以旋转除了\((0101)_2 ...

  8. POJ-2516(最小费用最大流+MCMF算法)

    Minimum Cost POJ-2516 题意就是有n个商家,有m个供货商,然后有k种商品,题目求的是满足商家的最小花费供货方式. 对于每个种类的商品k,建立一个超级源点和一个超级汇点.每个商家和源 ...

  9. POJ-2195(最小费用最大流+MCMF算法)

    Going Home POJ-2195 这题使用的是最小费用流的模板. 建模的时候我的方法出现错误,导致出现WA,根据网上的建图方法没错. 这里的建图方法是每次到相邻点的最大容量为INF,而花费为1, ...

随机推荐

  1. linux机器之间拷贝和同步文件命令

    1 不同机器拷贝文件 scp 文件     登录用户@机器IP:/目录/子目录 scp filename test@10.20.130.202:/home/test/ 2 文件[夹]同步 rsync ...

  2. LeetCode--038--报数(*)

    问题描述: 报数序列是指一个整数序列,按照其中的整数的顺序进行报数,得到下一个数.其前五项如下: 1. 1 2. 11 3. 21 4. 1211 5. 111221 1 被读作  "one ...

  3. Confluence 6 导入 Active Directory 服务器证书 - Mac OS X

    为了让你的应用服务器能够信任你的目录服务器.你目录服务器上导出的证书需要导入到你应用服务器的 Java 运行环境中.JDK 存储了信任的证书,这个存储信任证书的文件称为一个 keystore.默认的 ...

  4. 『cs231n』循环神经网络RNN

    循环神经网络 循环神经网络介绍摘抄自莫凡博士的教程 序列数据 我们想象现在有一组序列数据 data 0,1,2,3. 在当预测 result0 的时候,我们基于的是 data0, 同样在预测其他数据的 ...

  5. order by having group by

    1.group by 和having 的使用 SELECT *, count(`sku_quantity`)  as quantity FROM products  group by sku  hav ...

  6. poj1664 放苹果(DPorDFS)&&系列突破(整数划分)

    poj1664放苹果 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 33661   Accepted: 20824 Desc ...

  7. JQuery插件让图片旋转任意角度且代码极其简单 - 摘自网友

    JQuery插件让图片旋转任意角度且代码极其简单 2012-04-01 09:57:03     我来说两句      收藏    我要投稿 引入下方的jquery.rotate.js文件,然后通过$ ...

  8. iOS UI-常用控件

    #import "ViewController.h" @interface ViewController ()<UITextFieldDelegate> // 标题标签 ...

  9. 关于向后台请求数据(get请求,无参数传递),返回html代码(实际需要返回的是json数据)的解决方案

    this.$http.get(apis.schoolVideo, { headers: { 'X-Requested-With': 'XMLHttpRequest' } }) 待续

  10. html frameset的介绍

    frameset 元素可以定义一个框架集.它被用来组织多个窗口(框架).每个框架存有独立的文档. 属性 ①border 设置框架的边框粗细. ②bordercolor 设置框架的边框颜色. ③fram ...