【网络流量最大流量】poj3281Dining
/*
EK算法版本号,哦,慢。。。。。见下文dinic版本号
-----------------------------------------
最大的问题是网络流量问题
----------------------------------------
建图:
关键:拆点
把每一个牛拆成两个点,牛作为一个点有流量限制,即每一头牛仅仅能的一份饭。
把牛拆开后,将边的权值赋值为1。
----------------------------------------
建好图后就能够EK算法最大流了
----------------------------------------
建图代码:
for(int i=1; i<=f; i++)源点和food相连
g[s][i] = 1;
for(int i=1; i<=d; i++)drink和汇点相连
g[i + 2*n + f][t] = 1;
for(int i=1; i<=n; i++)
{
cin>>a>>b;
for(int j=1; j<=a; j++)
{
cin>>food;
g[food][f + i] = 1;food和牛相连
}
g[f + i][f + i + n] = 1;牛拆点后也要相连
for(int j=1; j<=b; j++)
{
cin>>drink;
g[f + i + n][2*n + f + drink] = 1;牛和drink相连
}
}
---------------------------------
*/
#include <iostream>
#include <cstdio>
#include <queue>
#include <cstring>
#define INF 0x3f3f3f3f using namespace std; const int N = 500; int n,f,d;
int g[N][N];
int flow[N][N],a[N],p[N];
int s,t; int EK(int s, int t)
{
queue<int> q;
int f = 0;
for(;;)
{
memset(a,0,sizeof(a));
a[s] = INF;
q.push(s);
while(!q.empty())
{
int u = q.front();
q.pop();
for(int v=s; v<=t; v++)
{
if(!a[v] && g[u][v] > flow[u][v])
{
p[v] = u;
q.push(v);
a[v] = min(a[u],g[u][v] - flow[u][v]);
}
}
}
if(a[t] == 0)
break;
for(int u=t; u != s; u=p[u])
{
flow[p[u]][u] += a[t];
flow[u][p[u]] -= a[t];
}
f += a[t];
}
return f;
} void init()
{
int a,b,food,drink;
s = 0;
t = 2*n + f + d + 1;
memset(g,0,sizeof(g));
for(int i=1; i<=f; i++)
g[s][i] = 1;
for(int i=1; i<=d; i++)
g[i + 2*n + f][t] = 1;
for(int i=1; i<=n; i++)
{
cin>>a>>b;
for(int j=1; j<=a; j++)
{
cin>>food;
g[food][f + i] = 1;
}
g[f + i][f + i + n] = 1;
for(int j=1; j<=b; j++)
{
cin>>drink;
g[f + i + n][2*n + f + drink] = 1;
}
}
} int main()
{
//freopen("input.txt","r",stdin);
while(scanf("%d%d%d",&n,&f,&d) != EOF)
{
init();
printf("%d\n",EK(s, t));
}
return 0;
}
--------------------------------------------------------------------
战斗,不留情面;斗争。永不停止~~~~~~~~~~~~~~
【网络流量最大流量】poj3281Dining的更多相关文章
- Linux下网络流量实时监控工具
Linux下网络流量实时监控工具大全 在工作中发现,经常因为业务的原因,需要即时了解某台服务器网卡的流量,虽然公司也部署了cacti软件,但cacti是五分钟统计的,没有即时性,并且有时候打开监控页面 ...
- linux 网络数据收发网络流量监控
网卡流量 1.iftop命令 iftop可以用来监控网卡的实时流量(可以指定网段).反向解析IP.显示端口信息.TCP/IP连接等官网:http://www.ex-parrot.com/~pdw/if ...
- windows下使用C#获取特定进程网络流量
最近老板接了一个中船重工的项目,需要做一个有关海军软件系统的组件评估项目,项目中有一个子项目需要获取特定进程的各种系统参数,项目使用.NET平台.在获取特定进程各种系统参数时,其它诸如进程ID,进程名 ...
- 一个链接引发的血案---------服务器 IO及网络流量暴涨解决历程
在这里介绍一次因为更改网站地址而引发服务器IO读取速度,网络流入流出速度暴涨10倍的解决经历. 环境:Ubuntu + Nginx + php-cgi + Wordpress 事情是这样的,现在网站使 ...
- CentOS7 监控进程网络流量工具安装
服务器在做测试的时候,需要监控网络流量,用来了解在不同人数的时候服务器的网络使用量. 我们使用服务器环境是centos7,centos下通常使用iftop,或者nethogs来进行网络流量监控.这2个 ...
- 【读书笔记】iOS网络-测试与操纵网络流量
一,观测网络流量. 观测网络流量的行为叫做嗅探或数据包分析. 1,嗅探硬件. 从iOS模拟器捕获数据包不需要做特别的硬件或网络配置.如果需要捕获这些数据包,那么可以使用嗅探软件来监听回送设备或是用于连 ...
- [Android Pro] 网络流量安全测试工具Nogotofail
reference to : http://www.freebuf.com/tools/50324.html 从严重的HeartBleed漏洞到苹果的gotofail 漏洞,再到最近的SSL v3 P ...
- Linux网络流量实时监控ifstat iftop命令详解
ifstat 介绍 ifstat工具是个网络接口监测工具,比较简单看网络流量 实例 默认使用 #ifstat eth0 eth1 KB /s i ...
- linux网络流量实时监控工具之iptraf
这个工具还是很强大 linux网络流量实时监控工具之iptraf [我的Linux,让Linux更易用]IPTraf是一个网络监控工具,功能比nload更强大,可以监控所有的流量,IP流量,按协议分的 ...
随机推荐
- MyEclipse 2013 新功能介绍
http://pan.baidu.com/share/link?shareid=3310814720&uk=4012618212 下载地址 HTML5 Mobile Projects MyEc ...
- C#之异步编程
1 异步编程的重要性 C#5.0最重要的改进是提供了更强大的异步编程,C#5.0仅增加两个关键字Async和Await,使用异步编程,方法调用是后台运行(通常在线程和任务的帮助下),并且不会阻塞调用线 ...
- VC++ 在两个文件互相包含时会出现的错误
首先,要分别在两个文件中实现以下两个类 class Object { public: NewType ToType(); }; class NewType : public Object { } -- ...
- Eclipse 快捷键整理
Alt+/:代码提示Ctrl+/:注释/取消注释Ctrl+D:删除光标所在行Ctrl+K:将光标停留在变量上,按Ctrl+K键可以查找到下一个同样的变量Shift+Ctrl+K:和Ctrl+K查找的方 ...
- winzip15.0许可证
username:Juzhaofeng 授权码:MPZRP-Y7LWW-K1DKG-FM92E-2C5F5-ZEKFF
- Parallel Python——一个简单的分布式计算系统
如何建立一个高速的分布式计算平台?Parallel python此目的. Parallel Python(http://www.parallelpython.com/content/view/15/3 ...
- OWIN与Katana
OWIN与Katana详解 前言 我胡汉三又回来了,!!!!, 最近忙成狗,实在没空写博文,实在对不起自己,博客园上逛了逛发现 我大微软还是很给力的 asp.net core 1.0 .net c ...
- CSS预处理器——Sass、LESS和Stylus实践
CSS(Cascading Style Sheet)被译为级联样式表,做为一名前端从业人员来说,这个专业名词并不陌生,在行业中通常称之为“风格样式表(Style Sheet)”,它主要是用来进行网页风 ...
- LAMP一键安装包(Python版)
去年有出一个python整的LAMP自动安装,不过比较傻,直接调用的yum 去安装了XXX...不过这次一样有用shell..我也想如何不调用shell 来弄一个LAMP自动安装部署啥啥的..不过尼玛 ...
- Swing程序最佳架构设计—以业务对象为中心的MVC模式(转)
前言: 我打算写一系列关于Swing程序开发的文章.这是由于最近我在做一个Swing产品的开发.长期做JavaEE程序,让我有些麻木了.Swing是设计模式的典范,是一件优雅的艺术品,是一件超越时代的 ...