由于价格是单调递增的,因此可以直接建立Si条边,流量和价格依次为给定的函数即可
(如果价格不递增,可以考虑动态加边等操作)

 1 #include<bits/stdc++.h>
2 using namespace std;
3 #define N 1005
4 struct ji{
5 int nex,to,len,cost;
6 }edge[N*N];
7 queue<int>q;
8 int E,n,m,x,y,head[N],d[N],from[N],vis[N];
9 long long ans;
10 void add(int x,int y,int z,int w){
11 edge[E].nex=head[x];
12 edge[E].to=y;
13 edge[E].len=z;
14 edge[E].cost=w;
15 head[x]=E++;
16 if (E&1)add(y,x,0,-w);
17 }
18 bool spfa(){
19 memset(d,0x3f,sizeof(d));
20 memset(vis,0,sizeof(vis));
21 q.push(0);
22 d[0]=0;
23 while (!q.empty()){
24 int k=q.front();
25 q.pop();
26 for(int i=head[k];i!=-1;i=edge[i].nex)
27 if ((edge[i].len)&&(d[edge[i].to]>d[k]+edge[i].cost)){
28 d[edge[i].to]=d[k]+edge[i].cost;
29 from[edge[i].to]=i;
30 if (!vis[edge[i].to]){
31 vis[edge[i].to]=1;
32 q.push(edge[i].to);
33 }
34 }
35 vis[k]=0;
36 }
37 return d[n+m+1]<0x3f3f3f3f;
38 }
39 int main(){
40 scanf("%d%d",&n,&m);
41 memset(head,-1,sizeof(head));
42 for(int i=1;i<=m;i++){
43 scanf("%d",&x);
44 add(i+n,n+m+1,x,0);
45 }
46 for(int i=1;i<=n;i++)
47 for(int j=1;j<=m;j++){
48 scanf("%d",&x);
49 if (x)add(i,j+n,0x3f3f3f3f,0);
50 }
51 for(int i=1;i<=n;i++){
52 scanf("%d",&x);
53 for(int j=1;j<=x;j++)scanf("%d",&d[j]);
54 d[x+1]=0x3f3f3f3f;
55 for(int j=0;j<=x;j++){
56 scanf("%d",&y);
57 add(0,i,d[j+1]-d[j],y);
58 }
59 }
60 while (spfa()){
61 x=0x3f3f3f3f;
62 for(int i=n+m+1;i;i=edge[from[i]^1].to)x=min(x,edge[from[i]].len);
63 ans+=1LL*x*d[n+m+1];
64 for(int i=n+m+1;i;i=edge[from[i]^1].to){
65 edge[from[i]].len-=x;
66 edge[from[i]^1].len+=x;
67 }
68 }
69 printf("%lld",ans);
70 }

最新文章

  1. Sublime、Webstorm,还有CLI、Atom,这些开发工具的更新你清楚吗?
  2. CSipSimple的插件结构
  3. loadruner知识点小结
  4. iconv命令 gbk 转 UTF-8
  5. Java实现单向链表的增删改查
  6. Myeclipse2014配置JSF环境
  7. css实现鼠标经过导航文字偏位效果
  8. C# 实现HTML5服务器推送事件
  9. 关于Ionic的安装
  10. C++ 头文件系列(array)
  11. Centos 7系统启动修复
  12. Linux指令--mv
  13. 阿里云 virtual memory exhausted: 无法分配内存
  14. SpringBoot2.x开发案例之整合Quartz任务管理系统
  15. Spiring系列__03IOC补充
  16. 第一册:lesson forty three。
  17. Android瀑布流照片
  18. C语言 &#183; 乘法运算
  19. Java 常用对象-System类
  20. 实例教程:1小时学会Python(转)

热门文章

  1. Mysql读写分离集群的搭建且与MyCat进行整合
  2. 题解 [CTSC2006]歌唱王国
  3. python os.walk处理树状目录结构的文件
  4. Linux信号处理编程
  5. mysql all_ip_test局域网IP测试工具,有需要的改一改.
  6. django 中的hello word 开心,通过申请博客了,,发个随笔庆祝一下~~~~~~~
  7. 从浏览器发送请求给SpringBoot后端时,是如何准确找到哪个接口的?(下篇)
  8. 2021.9.14考试总结[NOIP模拟53]
  9. 21.6.4 test
  10. atcoder ABC233