练练最小费用最大流

此外此题也是一经典图论题

题意:找出两条从s到t的不同的路径,距离最短。

  要注意:这里是无向边,要变成两条有向边

#include <cstdio>
#include <cstring>
#define MAXN 1005
#define MAXM 10005
#define INF 0x3f3f3f3f struct Edge
{
int y,c,w,ne;//c容量 w费用
}e[MAXM*]; int n,m,x,y,w;
int s,t,Maxflow,Mincost;
int all,be[MAXN];
int q[MAXM*],dis[MAXN],pre[MAXN];//pre存的是当前点的前边
bool vis[MAXN]; void add(int x, int y, int c, int cost)
{
e[all].y=y;e[all].c=c;e[all].w=cost;
e[all].ne=be[x];
be[x]=all++;
e[all].y=x;e[all].c=;e[all].w=-cost;//反向边费用取负
e[all].ne=be[y];
be[y]=all++;
} void init()
{
all=;
memset(be,-,sizeof(be));
}
bool spfa(int s, int t)
{
for(int i=; i<MAXN; i++)
{
dis[i]=INF;
vis[i]=;
pre[i]=-;
}
dis[s]=;
vis[s]=;
int head=,tail=;
q[++tail]=s;
while(head<tail)
{
int u=q[++head];
vis[u]=;
for(int i=be[u]; i!=-; i=e[i].ne)
{
int v=e[i].y;
if(e[i].c> && dis[v]>dis[u]+e[i].w)
{
dis[v]=dis[u]+e[i].w;
pre[v]=i;
if(!vis[v])
{
vis[v]=;
q[++tail]=v;
}
}
}
}
if(pre[t]==-) return ;
return ;
}
void MincostMaxflow(int s, int t)
{
Maxflow=;
Mincost=;
while(spfa(s,t))
{
int minc=INF;
for(int i=pre[t]; i!=-; i=pre[e[i^].y])
if(minc>e[i].c) minc=e[i].c;
for(int i=pre[t]; i!=-; i=pre[e[i^].y])
{
e[i].c-=minc;
e[i^].c+=minc;
Mincost+=e[i].w*minc;
}
Maxflow+=minc;
}
} int main()
{
scanf("%d%d",&n,&m);
init();
s=n+;
t=n+;
for(int i=; i<m; i++)
{
scanf("%d%d%d",&x,&y,&w);
add(x,y,,w);
add(y,x,,w);
}
add(s,,,);
add(n,t,,);
MincostMaxflow(s,t);
printf("%d\n",Mincost);
return ;
}

POJ2135 最小费用最大流模板题的更多相关文章

  1. 【网络流#2】hdu 1533 - 最小费用最大流模板题

    最小费用最大流,即MCMF(Minimum Cost Maximum Flow)问题 嗯~第一次写费用流题... 这道就是费用流的模板题,找不到更裸的题了 建图:每个m(Man)作为源点,每个H(Ho ...

  2. 2018牛客网暑期ACM多校训练营(第五场) E - room - [最小费用最大流模板题]

    题目链接:https://www.nowcoder.com/acm/contest/143/E 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K ...

  3. [POJ2135]最小费用最大流

    一直由于某些原因耽搁着...最小费用最大流没有搞会. 今天趁着个人状态正佳,赶紧去看看,果然30min不到看会了算法+模板并且A掉了一道题. 感觉最小费用最大流在学过了最大流之后还是挺好理解的.找到从 ...

  4. 洛谷P3381 最小费用最大流模板

    https://www.luogu.org/problem/P3381 题目描述 如题,给出一个网络图,以及其源点和汇点,每条边已知其最大流量和单位流量费用,求出其网络最大流和在最大流情况下的最小费用 ...

  5. 最大流 && 最小费用最大流模板

    模板从  这里   搬运,链接博客还有很多网络流题集题解参考. 最大流模板 ( 可处理重边 ) ; const int INF = 0x3f3f3f3f; struct Edge { int from ...

  6. 图论算法-最小费用最大流模板【EK;Dinic】

    图论算法-最小费用最大流模板[EK;Dinic] EK模板 const int inf=1000000000; int n,m,s,t; struct node{int v,w,c;}; vector ...

  7. HDU3376 最小费用最大流 模板2

    Matrix Again Time Limit: 5000/2000 MS (Java/Others)    Memory Limit: 102400/102400 K (Java/Others)To ...

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

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

  9. POJ-2135 Farm Tour---最小费用最大流模板题(构图)

    题目链接: https://vjudge.net/problem/POJ-2135 题目大意: 主人公要从1号走到第N号点,再重N号点走回1号点,同时每条路只能走一次. 这是一个无向图.输入数据第一行 ...

随机推荐

  1. android support Percent支持库开发

    Android的布局支持百分比的设置进行开发,来学习如何去实现它,不过看起来会像网页的设置,比如宽度的设置属性是`layout_widthPercent`.在此之前,我们一般都会设置Linearlay ...

  2. OC 加密

    //MD5加密的结果为128位的二进制数. //所以有128 / 8 = 16字节(8位一个字节). //每八位表示两个16进制数. //MD5 有32个16进制数. //语言层次的所有摘要算法步骤类 ...

  3. Winform控件学习-TreeView - ContextMenuStrip

    首先,要向窗体添加一个TreeView控件: 然后再添加一个ContextMenuStrip控件: 接下就要给TreeView添加一个MouseDown事件,代码如下: Example 1 priva ...

  4. Sublime text 取消记住上一次打开的,这功能太墨迹了!

    比较恨,这sublime text的配置全部都是配置文件. 选择菜单:Preferences->Settings-User,增加配置项 //热退出,其实实现一种模拟没有退出的状态,当程序再次启动 ...

  5. 2012 Asia JinHua Regional Contest

    Draw Something http://acm.hdu.edu.cn/showproblem.php?pid=4450 o(n)统计输入每个数的平方和. #include<cstdio> ...

  6. [设计模式] 22 模板方法模式 template

    转http://www.jellythink.com/archives/407 在GOF的<设计模式:可复用面向对象软件的基础>一书中对模板方法模式是这样说的:定义一个操作中的算法骨架,而 ...

  7. 总结:Unity3D游戏上线后的流程回顾

    原地址:http://unity3d.9tech.cn/news/2014/0127/39748.html 首先.unity 灯光烘焙 :Unity 3d FBX模型导入.选项Model 不导入资源球 ...

  8. hdu 3336 Count the string(思维可水过,KMP)

    题目 以下不是KMP算法—— 以下是kiki告诉我的方法,好厉害的思维—— 就是巧用标记,先标记第一个出现的所有位置,然后一遍遍从标记的位置往下找. #include<stdio.h> # ...

  9. SPOJ LGLOVE 7488 LCM GCD Love (区间更新,预处理出LCM(1,2,...,n))

    题目连接:http://www.spoj.com/problems/LGLOVE/ 题意:给出n个初始序列a[1],a[2],...,a[n],b[i]表示LCM(1,2,3,...,a[i]),即1 ...

  10. ElasticSearch Java api 详解_V1.0

    /×××××××××××××××××××××××××××××××××××××××××/ Author:xxx0624 HomePage:http://www.cnblogs.com/xxx0624/ ...