http://wenku.baidu.com/view/0ad00abec77da26925c5b01c.html 以上内容均为转载

#include<queue>
#include<vector>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int N=;
const int INF=;
vector<int>G[];
bool mp[N][N],used[];
int tot,head[N],dis[N],st,ed,val[],sum[N];
struct node{
int to,next,w;
}e[N*N*];
void init(){
tot=;
memset(head,-,sizeof(head));
}
void add(int u,int v,int w){
e[tot].to=v;
e[tot].w=w;
e[tot].next=head[u];
head[u]=tot++;
}
bool bfs(){
memset(dis,-,sizeof(dis));
queue<int>Q;
Q.push(st);
dis[st]=;
while(!Q.empty()){
int u=Q.front();
Q.pop();
for(int i=head[u];i+;i=e[i].next){
int v=e[i].to;
if(dis[v]==-&&e[i].w>){
dis[v]=dis[u]+;
if(v==ed) return true;
Q.push(v);
}
}
}
return false;
}
int dfs(int s,int low){
if(s==ed||low==) return low;
int ans=low,a;
for(int i=head[s];i+;i=e[i].next){
int v=e[i].to;
if(dis[v]==dis[s]+&&e[i].w>&&(a=dfs(v,min(ans,e[i].w)))){
ans-=a;
e[i].w-=a;
e[i^].w+=a;
if(!ans) return low;
}
}
if(low==ans) dis[s]=-;
return low-ans;
}
int main(){
int n,m,x,num;
while(scanf("%d%d",&n,&m)!=EOF){
st=;ed=m+;
memset(sum,,sizeof(sum));
for(int i=;i<=n;++i) G[i].clear();
for(int i=;i<=n;++i) scanf("%d",val+i);
memset(used,,sizeof(used));
init();
for(int i=;i<=m;++i) {
scanf("%d",&num);
while(num--){
scanf("%d",&x);
if(!used[x]) {used[x]=;sum[i]+=val[x];}
G[x].push_back(i);
}
scanf("%d",&x);
add(i,ed,x);
add(ed,i,);
}
memset(mp,,sizeof(mp));
for(int i=;i<=n;++i){
for(int j=;j<(int)G[i].size();++j){
if(!j&&!mp[][G[i][j]]) {
mp[G[i][j]][]=mp[][G[i][j]]=;
add(,G[i][j],sum[G[i][j]]);
add(G[i][j],,);
}
else if(!mp[G[i][]][G[i][j]]) {
add(G[i][],G[i][j],INF);
add(G[i][j],G[i][],);
mp[G[i][]][G[i][j]]=;
}
}
}
int ans=;
while(bfs()) ans+=dfs(,INF);
printf("%d\n",ans);
}
}

poj1149 经典建模的更多相关文章

  1. HDU1045(二分图经典建模)

    Fire Net Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  2. Wolsey“强整数规划模型”经典案例之一单源固定费用网络流问题

    Wolsey“强整数规划模型”经典案例之一单源固定费用网络流问题 阅读本文可以理解什么是“强”整数规划模型. 单源固定费用网络流问题见文献[1]第13.4.1节(p229-231),是"强整 ...

  3. 「国庆训练&知识学习」图的最大独立集与拓展(Land of Farms,HDU-5556)

    题意 一个\(N*M\)的矩阵,其中"."代表空地,"0-9"代表古代建筑,我们如果选择了一个编号的古代建筑想要建立,那么对应就要将全部该编号的建筑建立起来,如 ...

  4. 【bzoj1976】[BeiJing2010组队]能量魔方 Cube 网络流最小割

    题目描述 一个n*n*n的立方体,每个位置为0或1.有些位置已经确定,还有一些需要待填入.问最后可以得到的 相邻且填入的数不同的点对 的数目最大. 输入 第一行包含一个数N,表示魔方的大小. 接下来 ...

  5. 网络流24题:P2762 太空飞行计划问题

    P2762 太空飞行计划问题 题目背景 题目描述 W 教授正在为国家航天中心计划一系列的太空飞行.每次太空飞行可进行一系列商业性实验而获取利润.现已确定了一个可供选择的实验集合E={E1,E2,…,E ...

  6. BZOJ3532 [Sdoi2014]Lis 【网络流退流】

    题目 给定序列A,序列中的每一项Ai有删除代价Bi和附加属性Ci.请删除若 干项,使得4的最长上升子序列长度减少至少1,且付出的代价之和最小,并输出方案. 如果有多种方案,请输出将删去项的附加属性排序 ...

  7. UVA11082 Matrix Decompressing 最大流建模解矩阵,经典

    /** 题目:UVA11082 Matrix Decompressing 链接:https://vjudge.net/problem/UVA-11082 题意:lrj入门经典P374 已知一个矩阵的行 ...

  8. poj1149最大流经典构图神题

    题意:n个顾客依次来买猪,有n个猪房,每个顾客每次可以开若干个房子,买完时,店主可以调整这位顾客 开的猪房里的猪,共m个猪房,每个猪房有若干猪,求最多能卖多少猪. 构图思想:顾客有先后,每个人想要的猪 ...

  9. 余胜威《MATLAB数学建模经典案例实战》2015年版

    内容介绍 本书全面.系统地讲解了数学建模的知识.书中结合历年全国大学生数学建模竞赛试题,采用案例与算法程序相结合的方法,循序渐进,逐步引导读者深入挖掘实际问题背后的数学问题及求解方法.在本书案例的分析 ...

随机推荐

  1. Spring MVC 中的http Caching

    文章目录 过期时间 Last-Modified ETag Spring ETag filter Spring MVC 中的http Caching Cache 是HTTP协议中的一个非常重要的功能,使 ...

  2. TypeScript 2.0 正式发布

    9 月 22 日,TypeScript 2.0 正式发布了. TypeScript 是微软开发的开源的编程语言,主要负责人是 C# 之父 Anders Hejlsberg. TypeScript 成功 ...

  3. 怎么查看当前的git分支是基于哪个分支创建的?

    2019独角兽企业重金招聘Python工程师标准>>> Question: 比如从 branch A 切出一个 branch B 然后对branch B做了一系列的操作 然后忘记了b ...

  4. Jaba_Web--JDBC 删除记录操作模板

    import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import ...

  5. muduo网络库源码学习————线程本地单例类封装

    muduo库中线程本地单例类封装代码是ThreadLocalSingleton.h 如下所示: //线程本地单例类封装 // Use of this source code is governed b ...

  6. nginx判定国家ip访问网站

    我们可以通过GeoIP模块和MaxMind免费数据库来实现.MaxMind具有新版本的数据库GeoLite2,它仅支持CSV和mmdb格式.可以支持mngx_http_geoip2_modulemdb ...

  7. Java 经典面试题:聊一聊 JUC 下的 CopyOnWriteArrayList

    ArrayList 是我们常用的工具类之一,但是在多线程的情况下,ArrayList 作为共享变量时,并不是线程安全的.主要有以下两个原因: 1. ArrayList 自身的 elementData. ...

  8. C. Helga Hufflepuff's Cup 树形dp 难

    C. Helga Hufflepuff's Cup 这个题目我感觉挺难的,想了好久也写了很久,还是没有写出来. dp[i][j][k] 代表以 i 为根的子树中共选择了 j 个特殊颜色,且当前节点 i ...

  9. springboot配置静态资源访问路径

    其实在springboot中静态资源的映射文件是在resources目录下的static文件夹,springboot推荐我们将静态资源放在static文件夹下,因为默认配置就是classpath:/s ...

  10. 【Spark】SparkStreaming从不同基本数据源读取数据

    文章目录 基本数据源 文件数据源 注意事项 步骤 一.创建maven工程并导包 二.在HDFS创建目录,并上传要做测试的数据 三.开发SparkStreaming代码 四.运行代码后,往HDFS文件夹 ...