[CEOI2008] order

题目描述

有N个工作,M种机器,每种机器你可以租或者买过来. 每个工作包括若干道工序,每道工序需要某种机器来完成,你可以通过购买或租用机器来完成。 现在给出这些参数,求最大利润

输入输出格式

输入格式:

 

第一行给出 N,M(1<=N<=1200,1<=M<=1200) 下面将有N组数据。

每组数据第一行给出完成这个任务能赚到的钱(其在[1,5000])及有多少道工序

接下来若干行每行两个数,分别描述完成工序所需要的机器编号及租用它的费用(其在[1,20000]) 最后M行,每行给出购买机器的费用(其在[1,20000])

 

输出格式:

 

最大利润

 

输入输出样例

输入样例#1: 
2 3
100 2
1 30
2 20
100 2
1 40
3 80
50
80
110
输出样例#1: 
50


经典最小割建模。

#include<bits/stdc++.h>
#define ll long long
#define pb push_back
const int maxn=3005;
using namespace std;
const int inf=1<<30;
vector<int> g[maxn];
struct lines{int to,flow,cap;
}l[maxn*1000];
int S,T,t=-1,d[maxn],cur[maxn];
bool v[maxn];inline void add(int from,int to,int cap){l[++t]=(lines){to,0,cap},g[from].pb(t);l[++t]=(lines){from,0,0},g[to].pb(t);
}inline bool BFS(){memset(v,0,sizeof(v));queue<int> q;q.push(S),v[S]=1,d[S]=0;int x; lines e;while(!q.empty()){x=q.front(),q.pop();for(int i=g[x].size()-1;i>=0;i--){e=l[g[x][i]];if(e.flow<e.cap&&!v[e.to]){v[e.to]=1,d[e.to]=d[x]+1;q.push(e.to);}}}return v[T];
}int dfs(int x,int A){if(!A||x==T) return A;int flow=0,f,sz=g[x].size();for(int &i=cur[x];i<sz;i++){lines &e=l[g[x][i]];if(d[e.to]==d[x]+1&&(f=dfs(e.to,min(A,e.cap-e.flow)))){A-=f,flow+=f;e.flow+=f,l[g[x][i]^1].flow-=f;if(!A) break;}}return flow;
}inline int max_flow(){int an=0;while(BFS()){memset(cur,0,sizeof(cur));an+=dfs(S,inf);}return an;
}
int N,M,ans=0,now,num,K;
int main(){scanf("%d%d",&N,&M),S=0,T=N+M+1;for(int i=1;i<=N;i++){scanf("%d",&now),ans+=now,add(S,i,now);scanf("%d",&K);while(K--){scanf("%d%d",&num,&now);add(i,num+N,now);}}for(int i=1;i<=M;i++) scanf("%d",&now),add(i+N,T,now);printf("%d\n",ans-max_flow());return 0;
}

  

 

转载于:https://www.cnblogs.com/JYYHH/p/8782620.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/486336.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

response.end后抛了异常_(七)异常处理

(七)异常处理异常异常的体系结构java.lang.Throwable|-----java.lang.Error&#xff1a;一般不便携针对性的代码进行处理|-----java.lang.Exception&#xff1a;可以进行异常的处理|-----编译时异常&#xff08;checked|-----IOException|-----FileNotFoundException|-----Clas…

java xy x y_为什么该语句在Java中不起作用x ^ = y ^ = x ^ = y;

小编典典您的陈述大致相当于这种扩展形式&#xff1a;x x ^ (y y ^ (x x ^ y));与C语言不同&#xff0c;在Java中&#xff0c;保证二进制运算符的左操作数在右操作数之前进行求值。评估如下&#xff1a;x x ^ (y y ^ (x x ^ y))x 1 ^ (y 2 ^ (x 1 ^ 2))x 1 ^ (y 2 ^…

AI+视频分析:实时监测无处不在的安全风险

来源丨Forbes作者丨Louis Columbus编译丨科技行者纵观2020年运营层面的诸多挑战&#xff0c;公共事业企业已经意识到对其所运营的物理及网络安全体系进行360度全方位审视的重要意义。最近&#xff0c;由Gartner发布的调查报告显示&#xff0c;94%的北美CIO认为&#xff0c;对偏…

大数据第一期

一 、大数据的技术体系 有几个部分组成&#xff1a; 六层 数据可视化 &#xff08;Cboard &#xff0c; Echart&#xff09; 五层 数据分析&#xff08;数据仓库&#xff08;Hive&#xff09;&#xff0c;数据挖掘&#xff08;SparkStreming&#xff09;&#xff0c;OLAP&…

python 绘图的背景颜色不要_matplotlib自定义添加 “哆啦A梦”背景图,这个操作真牛逼!...

为什么需要加星标&#xff1f;由于微信公众号出现了 “乱序” 排列的状况&#xff0c;也就是说&#xff1a;文章不会按照 “时间顺序” 推送给你。那么朋友们就不能第一时间&#xff0c;收到我的干货。因此希望您抽出一分钟&#xff0c;完成如下三步。数据分析与统计学之美原创…

台积电2nm工艺重大突破!

来源&#xff1a;万物智能视界根据最新报道&#xff0c;台积电已经在2nm工艺上取得一项重大的内部突破&#xff0c;虽未披露细节&#xff0c;但是据此乐观预计&#xff0c;2nm工艺有望在2023年下半年进行风险性试产&#xff0c;2024年就能步入量产阶段。台积电还表示&#xff0…

png文件合并_png格式图片和jpg格式图片有什么区别?

两个格式的图片群文件有一定的相似之处&#xff0c;png是无损压缩&#xff0c;可以在PS中重新编辑。.jpg格式是一种压缩的图片文件&#xff0c;不能再次编辑&#xff0c;而且在解析度上也是不如.png格式。具体介绍如下&#xff1a;1、png是无损压缩&#xff0c;png即可移植网络…

sql 列集合

STUFF((SELECT ,CAST( TYZ_Bh as varchar(10)) FROM #1 where 片区划分江东 for xml path()),1,1,) 转载于:https://www.cnblogs.com/kunlunmountain/p/8796499.html

java获取s3对象url_java-如何通过SDK设置S3对象的内容类型?

我正在尝试使用AWS Api设置多个对象的内容类型,并向它们添加’content-encoding&#xff1a;gzip’标头.这是我这样做的代码&#xff1a;for (S3ObjectSummary summary : objs.getObjectSummaries() ){String key summary.getKey();if (! key.endsWith(".gz"))conti…

python环境变量的配置_python基础教程-第一讲-带你进入python的世界

python是一门非常流行的语言&#xff0c;在前段时间网上流传的地产大佬潘石屹宣布要开始学习Python编程&#xff0c;这着实让python又火了一把&#xff0c;但确实反映出python的火热程度 。在2019年12月的世界编程语言排行榜中&#xff0c;python排名第三。2019年12月语言排行榜…

python 多分类情感词典_基于情感词典的文本情感分类

基于情感词典的文本情感分类传统的基于情感词典的文本情感分类&#xff0c;是对人的记忆和判断思维的最简单的模拟&#xff0c;如上图。我们首先通过学习来记忆一些基本词汇&#xff0c;如否定词语有“不”&#xff0c;积极词语有“喜欢”、“爱”&#xff0c;消极词语有“讨厌…

java单终端登陆_配置终端服务单一登录

配置终端服务单一登录配置终端服务单一登录单一登录是一种身份验证方法&#xff0c;允许具有域帐户的用户使用密码或智能卡登录一次&#xff0c;然后&#xff0c;不再要求其提供凭据即可访问远程服务器。若要在终端服务中实现单一登录功能&#xff0c;请确保满足下列要求&#…

Mybatis逆向工程的pojo实现序列化接口代码

情景如下&#xff0c;这两天在做一个分布式的项目&#xff0c;使用了Alibaba的dubbo作为通信工具&#xff0c;zookeeper作为register&#xff0c;由于dubbo是基于socket协议的&#xff0c;所以在进行pojo传输的时候报了异常&#xff0c;因为pojo没有实现序列化接口&#xff0c;…

重磅!2020年全球高被引科学家名单出炉!

来源&#xff1a;科睿唯安、青塔英国伦敦时间11月18日&#xff0c;科睿唯安公布了2020年度“高被引科学家”名单。入榜这份备受期待的名单的自然科学家和社会科学家均发表了多篇高被引论文&#xff0c; 其被引频次位于同学科前1%&#xff0c;彰显了他们在同行之中的重要学术影响…

python 二进制数 转字符串_Python二进制串转换为通用字符串的方法

一个小问题今天在做一个实验时&#xff0c;需要对一个包含中英文词汇的TXT文件进行读入和整理。Python代码的编码规则为UTF-8。在读入时&#xff0c;文件的每行是二进制串&#xff0c;形如&#xff1a;bheroesxff.....在对每行进一步进行处理时&#xff0c;要求处理对象必须为通…

java用户注册代码解析_java springmvc 注册中央调度器代码解析

java springmvc 注册中央调度器代码解析发布时间&#xff1a;2020-08-22 20:58:23来源&#xff1a;脚本之家阅读&#xff1a;107作者&#xff1a;荆棘人这篇文章主要介绍了java springmvc 注册中央调度器代码解析,文中通过示例代码介绍的非常详细&#xff0c;对大家的学习或者工…

机器学习—K近邻

一、算法原理 还是图片格式~ 二、sklearn实现 import pandas as pd import numpy as np import matplotlib.pyplot as plt import matplotlib as mpl import seaborn as sns mpl.rcParams[font.sans-serif] [uSimHei] mpl.rcParams[axes.unicode_minus] False from sklearn.d…

华人教授世界一流大学观察报告:斯坦福师生吃饭时,谈论的都是什么话题?...

石毓智&#xff0c;斯坦福大学博士、湖南师范大学特聘教授、新加坡国立大学终身教职。来源&#xff1a;墨香学术 微信&#xff1a;moxiangxueshu编辑 ∑Gemini只有短短120年历史的斯坦福大学&#xff0c;已有近30人获得诺奖&#xff0c;不要说世界上其他大学难以匹敌&#xff0…

tcp连接工具_基于Swoole如何搭建TCP服务,你掌握了吗?

本节将会讲解以下3个问题&#xff1a;通过Swoole如何搭建TCP服务&#xff1f;通过Swoole如何搭建TCP客户端&#xff1f;通过Swoole搭建的TCP服务&#xff0c;更深入理解Swoole的事件驱动模式通过Swoole可以快速创建一个TCP服务&#xff0c;新建一个文件命名为 tcp_server.php&a…

java date the type is ambiguous_一个java ambiguous method 的问题

前段时间读一些代码&#xff0c;其中包含了若干复杂的implemens和extends关系&#xff0c;居然在调用时出现了the method *** is ambiguous for the type *** . 一直以为java中没有多继承&#xff0c;正常的多态怎么会造成这种问题。请看下面的场景&#xff1a;public class Am…