博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【bzoj1163/bzoj1339】[Baltic2008]Mafia 网络流最小割
阅读量:5291 次
发布时间:2019-06-14

本文共 516 字,大约阅读时间需要 1 分钟。

题目描述

匪徒准备从一个车站转移毒品到另一个车站,警方准备进行布控. 对于每个车站进行布控都需要一定的代价,现在警方希望使用最小的代价控制一些车站,使得去掉这些车站后,匪徒无法从原定的初始点到达目标点

输入

第一行输入N,M代表车站的总个数,及有多少条双向边连接它们. 2<=n<=200 , 1 <=m<=20000. 第二行给出两个数a,b,代表匪徒的出发点及目标点.1<=a,b<=N,a<>b. 再下来有N行,给出对第i个车站进行布控所需要的Money,其不超过10 000 000 再下来M行,用于描述图的结构.

输出

最少需要多少Money

样例输入

5 6

5 3
2
4
8
3
10
1 5
1 2
2 4
4 5
2 3
3 4

样例输出

5


题解

网络流最小割

每个点拆成两个,设为x[i]和y[i],连边x[i]->y[i],容量为布控需要的Money。

对于原图中的边i<->j,连边y[i]->x[j]和y[j]->x[i],容量均为inf。

然后以x[a]为源点,y[b]为汇点求最小割即为答案。

 

转载于:https://www.cnblogs.com/GXZlegend/p/7061144.html

你可能感兴趣的文章
正则表达式(java)规则大全
查看>>
java date类
查看>>
DateFormat类,Calendar类(日历类)
查看>>
stm32 usb调试
查看>>
Debug printf viewer
查看>>
stm32 TIM
查看>>
stm32HAL重要的库
查看>>
深浅cope
查看>>
bat 批量重命名文件 并替换部分字符
查看>>
Centos使用chrony做时间同步
查看>>
tcpreplay命令使用详解
查看>>
转-四层和七层负载均衡的区别
查看>>
docker私有库搭建过程(Registry)
查看>>
kubernetes重置(重装)node的flannel网络
查看>>
etcdctl环境变量设置
查看>>
kubectl patch
查看>>
高中地理思维导图(浙江省学考专用)
查看>>
MySQL---Mybatis 批处理(增,改,删)
查看>>
Date相关处理
查看>>
三种List集合的遍历方式
查看>>