hdu 3549 Flow Problem(简单网络流Dinic)
admin
2024-02-15 08:50:06
0

题目:http://acm.hdu.edu.cn/showproblem.php?pid=3549

Flow Problem

Time Limit: 5000/5000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)
Total Submission(s): 11114    Accepted Submission(s): 5271


 

Problem Description

Network flow is a well-known difficult problem for ACMers. Given a graph, your task is to find out the maximum flow for the weighted directed graph.

Input

The first line of input contains an integer T, denoting the number of test cases.
For each test case, the first line contains two integers N and M, denoting the number of vertexes and edges in the graph. (2 <= N <= 15, 0 <= M <= 1000)
Next M lines, each line contains three integers X, Y and C, there is an edge from X to Y and the capacity of it is C. (1 <= X, Y <= N, 1 <= C <= 1000)

Output

For each test cases, you should output the maximum flow from source 1 to sink N.

Sample Input

 

2
3 2
1 2 1
2 3 1
3 3
1 2 1
2 3 1
1 3 1

Sample Output

 

Case 1: 1
Case 2: 2

分析:很简明的问题,就是求解最大流。

#include 
#include 
#include 
#include 
using namespace std;
const int N=20,INF=0x3f3f3f3f;
struct Dinic {int c[N][N], n, s, t, l[N], e[N];int flow(int maxf = INF) {int left = maxf;while (build()) left -= push(s, left);return maxf - left;}int push(int x, int f) {if (x == t) return f;int &y = e[x], sum = f;for (; y 0 && l[x]+1==l[y]) {int cnt = push(y, min(sum, c[x][y]));c[x][y] -= cnt;c[y][x] += cnt;sum -= cnt;if (!sum) return f;}return f-sum;}bool build() {int m = 0;memset(l, -1, sizeof(l));l[e[m++]=s] = 0;for (int i=0; i 0 && l[y]<0) l[e[m++]=y] = l[e[i]] + 1;memset(e, 0, sizeof(e));return l[t] >= 0;}
} net;
int main()
{//freopen("cin.txt","r",stdin);int ca=1,t,n,m,x,y,c;cin>>t;while(t--){scanf("%d%d",&n,&m);memset(net.c,0,sizeof(net.c));net.n=n;net.s=0;net.t=n-1;for(int i=0;i                
            

相关内容

热门资讯

原创 空... 倾尽六个钱包,压上毕生积蓄,换来的“梦中情房”,那个被吹嘘得如同“会呼吸的空中花园”的居所,最终却让...
易方达黄金主题LOF:暂停申购... 每经编辑|张锦河 1月27日,易方达黄金主题LOF公告,1月28日起暂停A类人民币份额申购及定期定...
呼和浩特外贸成绩单里的“马力” ●王英 2025年,呼和浩特市外贸进出口总值264.3亿元,同比增长16.53%,其中,呼和浩特综合...
黄金下跌,白银深度回调!事关降... 1月27日晚间,黄金出现下跌,白银深度回调。 截至发稿,纽约期金报5094.1美元/盎司。 纽约期银...
寒假健康不“放假”丨爆笑情景剧... 1月17日,由长春市卫生健康委、长春市中医药管理局主办的“乐享寒假 健康相伴”健康科普宣传体验活动在...
原创 A... 来源:互联网江湖 作者:刘致呈 腾讯做AI社交的消息,爆了。 AI、社交这几乎是当今科技行业最有含金...
荷兰下议院批准为银行奖金上限制... 荷兰下议院批准为银行奖金上限制度松绑。
港股异动 | 钧达股份H股盘中... 1月27日,钧达股份H股持续下挫,一度跌超15%。截至10时36分,钧达股份H股跌13.83%,报3...
美光宣布NAND新厂建设,总投... 周二,美光科技宣布将在未来十年向新加坡追加投资240亿美元,用于建设新的NAND闪存晶圆厂,以应对人...
康宁美股盘前飙升超7%!报道:... 科技巨头meta已与老牌玻璃制造商康宁达成一项价值高达60亿美元的长期供货协议,以获取其数据中心所需...
广东江门50场重点促消费活动助... 中新社江门1月27日电 (记者 郭军)记者27日从江门市商务局了解到,江门紧扣“广货行天下”主题,将...
创始人丁文军“离场”,腾讯、红... 1月26日,南都湾财社记者从重庆市市场监管局公示的《经营者集中简易案件公示表》中获悉,川香四溢(上海...
你手里有“睡眠卡”吗?银行在清... 银行业加强对长期不动户的管理并非等同于销户,且卡里的钱并不会被“清零”。
万科“22万科MTN005”宽... 1月27日,万科A(000002.SZ)公告,根据关于万科企业(02202.HK)2022年度第五期...
坦洲创投基金签约 市镇合作招大... 1月27日,中山坦洲创业投资基金合伙企业(有限合伙)项目签约仪式成功举行。该基金由坦洲镇属企业中山市...
被解雇的游戏公司CEO,把工作... 每当某些平台出现大规模崩溃,网络上总会流传出一段“内部人士”的聊天记录,其中有模有样地描绘了“删库跑...
原创 不... 75.8%关税砸懵加拿大菜农:键盘侠喊“不卖中国卖别人”,现实给了一记耳光 萨斯喀彻温省的清晨总飘...
设研院:预计2025年度净利润... 每经AI快讯,设研院1月27日晚间发布业绩预告,预计2025年归属于上市公司股东的净利润亏损1.36...
黄金价格暴涨暴跌,是走还是留? 澎湃新闻记者 孙铭蔚 黄金的“狂飙”还在持续。 1月26日,伦敦现货黄金再创下历史性突破,盘中触及5...
太突然!熊海涛女士被留置,控制... 1月26日晚,毅昌科技突然公告,董事会于2026年1月26日收到公司副董事长熊海涛的书面辞职报告,熊...