/*
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的更多相关文章

  1. Linux下网络流量实时监控工具

    Linux下网络流量实时监控工具大全 在工作中发现,经常因为业务的原因,需要即时了解某台服务器网卡的流量,虽然公司也部署了cacti软件,但cacti是五分钟统计的,没有即时性,并且有时候打开监控页面 ...

  2. linux 网络数据收发网络流量监控

    网卡流量 1.iftop命令 iftop可以用来监控网卡的实时流量(可以指定网段).反向解析IP.显示端口信息.TCP/IP连接等官网:http://www.ex-parrot.com/~pdw/if ...

  3. windows下使用C#获取特定进程网络流量

    最近老板接了一个中船重工的项目,需要做一个有关海军软件系统的组件评估项目,项目中有一个子项目需要获取特定进程的各种系统参数,项目使用.NET平台.在获取特定进程各种系统参数时,其它诸如进程ID,进程名 ...

  4. 一个链接引发的血案---------服务器 IO及网络流量暴涨解决历程

    在这里介绍一次因为更改网站地址而引发服务器IO读取速度,网络流入流出速度暴涨10倍的解决经历. 环境:Ubuntu + Nginx + php-cgi + Wordpress 事情是这样的,现在网站使 ...

  5. CentOS7 监控进程网络流量工具安装

    服务器在做测试的时候,需要监控网络流量,用来了解在不同人数的时候服务器的网络使用量. 我们使用服务器环境是centos7,centos下通常使用iftop,或者nethogs来进行网络流量监控.这2个 ...

  6. 【读书笔记】iOS网络-测试与操纵网络流量

    一,观测网络流量. 观测网络流量的行为叫做嗅探或数据包分析. 1,嗅探硬件. 从iOS模拟器捕获数据包不需要做特别的硬件或网络配置.如果需要捕获这些数据包,那么可以使用嗅探软件来监听回送设备或是用于连 ...

  7. [Android Pro] 网络流量安全测试工具Nogotofail

    reference to : http://www.freebuf.com/tools/50324.html 从严重的HeartBleed漏洞到苹果的gotofail 漏洞,再到最近的SSL v3 P ...

  8. Linux网络流量实时监控ifstat iftop命令详解

    ifstat 介绍 ifstat工具是个网络接口监测工具,比较简单看网络流量 实例 默认使用 #ifstat        eth0                eth1       KB /s i ...

  9. linux网络流量实时监控工具之iptraf

    这个工具还是很强大 linux网络流量实时监控工具之iptraf [我的Linux,让Linux更易用]IPTraf是一个网络监控工具,功能比nload更强大,可以监控所有的流量,IP流量,按协议分的 ...

随机推荐

  1. iOS ,呼叫捕获抛出勉未知方法的障碍

    iOS 捕获未知方法的调用,避勉抛出异常 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 ...

  2. Linux系统时间和硬件时间设置

    在Linux中有硬件时钟与系统时钟两种时钟.硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟.系统时钟则是指kernel中的时钟.所有Linux相关指令与函数都是读取系统时钟的设定 ...

  3. NPC

    这里的想说的NPC不是Non-Player-Controled,非玩家控制角色,而是Non-determinisitc Polynomial complete problem,它属于一类很特殊的问题, ...

  4. AngularJs 基础(60分钟入门) (转)

    AngularJs是一个不错的用于开发SPA应用(单页Web应用)的框架.单页Web应用(single page web application,SPA),就是只有一张Web页面的应用.浏览器一开始会 ...

  5. [置顶] ios 时间定时器 NSTimer应用demo

    原创文章,转载请注明出处:http://blog.csdn.net/donny_zhang/article/details/9251917 demo功能:ios NSTimer应用demo .ipho ...

  6. JAVA insert() 插入字符串 reverse() 颠倒 delete()和deleteCharAt() 删除字符 replace() 替换 substring() 截取子串

    insert() 插入字符串 StringBuffer insert(int index,String str) StringBuffer insert(int index,char ch) Stri ...

  7. tar解压出错

    现象 # tar -zxvf aaa.tar.gz tar: This does not look like a tar archive tar: Skipping to next header ta ...

  8. 训练赛 Grouping(强连通分量缩点 + DAG求最长路)

    http://acm.sdut.edu.cn:8080/vjudge/contest/view.action?cid=158#problem/F 大致题意:给出n个人和m种关系(ti,si),表示ti ...

  9. android 自己定义开关(SwitchButton)

    近期心血来潮,写了一个自己定义仿iPhone的开关. 有须要的同学能够来下载啦.支持点击自己主动滚动,速率能够自己依据须要改动.触摸滚动,大小自己定义,支持改动样式.就不录制动画,就上传了两张图给大家 ...

  10. Android开发之文件下载,状态时显示下载进度,点击自动安装

    在进行软件升级时,需要进行文件下载,在这里实现自定义的文件下载,并在状态栏显示下载进度,下载完成后,点击触发安装. 效果如图: 用于下载文件和显示现在进度的线程类如下: [java]  view pl ...