P2053-修车【网络流,费用流】

前言

记录
记录
n和m搞反调半天系列


正题

AC记录链接:
https://www.luogu.org/record/show?rid=7949136


大意

又m个员工,n辆车,第j个员工修第i辆车需要T[i][j]的时间,求分配让顾客平均等待时间最短。


解题思路

首先先假设一个修车工要修1w1−w个人,那么对等待时间就要加上

t[1]w+t[2](w1)...+t[w1]2+t[w]t[1]∗w+t[2]∗(w−1)...+t[w−1]∗2+t[w]

那我们可以将m个修车工拆成m*n个人表示第m个人第n次修车,然后可以将顾客和修车工建立完全二分图,权值为
权值∗第几次
之后将原点连车,工人连汇点。


代码

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
struct line{int to,w,c,next;
}a[100081];
int tot,n,m,s,t,f[5001],ls[5001],tail,answer;
int state[5001],x,y,w,c,ans,head,pre[5001];
bool v[5001];
void addl(int x,int y,int w,int c)
{a[++tot].to=y;a[tot].w=w;a[tot].c=c;a[tot].next=ls[x];ls[x]=tot;a[++tot].to=x;a[tot].w=0;a[tot].c=-c;a[tot].next=ls[y];ls[y]=tot;
}
bool spfa()
{for (int i=1;i<=t;i++)f[i]=2147483647;head=0;tail=1;v[s]=true;state[1]=s;f[s]=0;while (head!=tail){head=head%t+1;int x=state[head];for (int q=ls[x];q;q=a[q].next){int y=a[q].to;if (a[q].w&&f[x]+a[q].c<f[y]){f[y]=f[x]+a[q].c;pre[y]=q;if (!v[y]){v[y]=true;tail=tail%t+1;state[tail]=y;}}}v[x]=false;}if (f[t]==2147483647) return 0;else return 1;
}
void upway()
{int now;ans+=f[t];now=t;answer+=1;while (now!=s){a[pre[now]].w--;a[pre[now]^1].w++;now=a[pre[now]^1].to;}
}
int main()
{tot=1;scanf("%d%d",&m,&n);s=m*n+n+1;t=m*n+n+2;for (int i=1;i<=n;i++)for (int j=1;j<=m;j++){scanf("%d",&x);for (int k=1;k<=n;k++)addl(n*m+i,~-(j)*n+k,1,k*x);//连接}for (int i=n*m+1;i<=n*m+n;i++) addl(s,i,1,0);//连原点for (int i=1;i<=n*m;i++)addl(i,t,1,0);//连汇点while (spfa()){upway();}printf("%.2lf",1.0*ans/n);
}

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

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

相关文章

走的走的居然飞起来了……

第一次坐飞机&#xff0c;终于满足了我的一个愿望了。记得之前在老家的山头上放羊时&#xff0c;远远的听到飞机想&#xff0c;我和我弟弟能把飞机目送到只剩下一条白线。。。。。一直在定睛观察飞机到底长啥样&#xff0c;那时候对于我们来说&#xff0c;能看见飞机的全面目就…

JFreeChart(四)之线型图

转载自 JFreeChart线型图 线图或折线图来显示信息为一系列由直线段连接的数据点(标记)。线图显示数据在相同的时间频率如何变化。本章从一个给定的业务数据演示如何使用JFreeChart创建线型图。 业务数据 下面的示例绘制折线图显示从1970年开始学校在不同年份开通数量。 给…

如何在Linux上使用VIM进行.Net Core开发

对于在Linux上开发.Net Core的程序员来说, 似乎都缺少一个好的IDE.Windows上有Visual Studio, Mac上有Visual Studio for Mac, 难道Linux只有Visual Studio Code了吗?Linux上有两个最好的编辑器: VIM和Emacs, 哪个更好不是这一篇的主题, 这一篇的主题是如何在Linux上简单的构建…

P2517-订货【网络流,费用流】

正题 AC链接&#xff1a; https://www.luogu.org/record/show?rid7949532 大意 有n个月&#xff0c;每个月商品价格di&#xff0c;需求量Ui。有容量为S的仓库&#xff0c;一个商品汇存一个月要m。求最低成本 解题思路 首先是月份做为点&#xff0c;成本作为费用&#xff0…

教学交流研讨会总结(一)

大家好&#xff0c;我是雄雄&#xff0c;欢迎关注公众号【雄雄的小课堂】。最近&#xff0c;我的个人站上线啦&#xff0c;大家可以直接在浏览器的地址栏中输入&#xff1a;穆雄雄.com&#xff0c;轻轻敲击回车&#xff0c;即可直接进入……

JFreeChart(五)之XY图

转载自 JFreeChart XY图 在xy图(散点图)是根据一个数据系列组成的x和y值的列表。每个值对(x&#xff0c;y)是坐标系中的一个点。这里1值确定水平(X)位置&#xff0c;而另一个确定垂直(Y)位置。本章演示了如何使用JFreeChart从一个给定的业务数据创建XY图表。 业务数据 考虑…

服务环境搭建

文章目录Nacos服务搭建一、nacos-server 环境搭建二、nacos-mysql 环境搭建三、建 领域模型REST访问配置&#xff08;给其他语言使用&#xff09;四、nacos-server 集群搭建Nacos服务搭建 一、nacos-server 环境搭建 1、 [nacos-server主机]&#xff08;考虑到后续开发的问题…

p2762-太空飞行计划问题【网络流,最大权闭合图,最小割】

正题 AC评测记录链接&#xff1a; https://www.luogu.org/record/show?rid7965757 大意 有nn个实验,有m" role="presentation">mm个实验器材的集合GG。完成第i" role="presentation">ii个实验可以获得cici元&#xff0c;第ii个实验需…

ASP.NET Core 源码学习之Logging[1]:Introduction

在ASP.NET 4.X中&#xff0c;我们通常使用 log4net, NLog 等来记录日志&#xff0c;但是当我们引用的一些第三方类库使用不同的日志框架时&#xff0c;就比较混乱了。而在 ASP.Net Core 中内置了日志系统&#xff0c;并提供了一个统一的日志接口&#xff0c;ASP.Net Core 系统以…

全国教学交流研讨会“教学为本”主题总结

大家好&#xff0c;我是雄雄&#xff0c;欢迎关注公众号【雄雄的小课堂】。最近&#xff0c;我的个人站上线啦&#xff0c;大家可以直接在浏览器的地址栏中输入&#xff1a;穆雄雄.com&#xff0c;轻轻敲击回车&#xff0c;即可直接进入……

JFreeChart(六)之3D饼图/条形图

转载自 JFreeChart 3D饼图/条形图 三维/3D图表是那些显示在一个三维格式。可以使用这些图表来提供更好的显示效果和清晰的信息。三维/3D饼图是饼图另外一个不错的3D效果。 3D效果可以通过添加一些额外的代码来实现&#xff0c;它会创建一个饼图3D效果。 3D饼图 请看下面的…

P2598-狼和羊的故事【最大流,最小割】

正题 评测记录&#xff1a; https://www.luogu.org/recordnew/lists?uid52918&pidP2598 大意 有n*m的矩阵&#xff0c;里面有羊和狼(也有可能是空)&#xff0c;可以在两个格子之间围上篱笆让两个格子不能互相到达&#xff0c;要求狼的格子不能和羊的格子在同一个联通块…

.NET Core 2.0 正式发布信息汇总

万众瞩目的.NET Core 2.0终于发布了&#xff0c;原定于9.19的dotnetconf大会的发布时间大大提前了1个月&#xff0c;.NET Core 2.0/.NET Standard 2.0的正式发布是.NET 开源跨平台的一个重大里程碑&#xff0c; 可以激活庞大的10几年以来各大公司和社区.NET 平台上的投资&#…

JFreeChart(七)之气泡图表​​​​​​​

转载自 JFreeChart气泡图表 本章演示如何使用JFreeChart从一个给定的业务数据创建气泡图表。使用气泡图显示在三维方式的信息。气泡绘制在其中(x&#xff0c;y)坐标相交的地方。气泡的大小被认为是范围或X和Y轴的数量。 业务数据 考虑不同的人的年龄&#xff0c;体重和工作…

家校共建,用心教学

大家好&#xff0c;我是雄雄&#xff0c;欢迎关注公众号【雄雄的小课堂】。最近&#xff0c;我的个人站上线啦&#xff0c;大家可以直接在浏览器的地址栏中输入&#xff1a;穆雄雄.com&#xff0c;轻轻敲击回车&#xff0c;即可直接进入……

2018/7/6-纪中某C组题【jzoj1192,jzoj1397,jzoj1736】

前言 全体爆零&#xff0c;十分开心 正题 T1&#xff1a;矩阵 大意 就是N个矩阵&#xff0c;然后进行矩阵乘法(n∗mn∗m和m∗pm∗p的矩阵相乘就会变成n∗pn∗p的矩阵并且运算次数是n∗m∗pn∗m∗p)&#xff0c;然后求最小乘法运算次数。 考试时 一直以为会是图论&#xff…

ASP.NET Core - Razor页面之Handlers处理方法

简介 在前一篇文章中&#xff0c;我们讨论了Razor页面。今天我们来谈谈处理方法&#xff08;Handlers&#xff09;。我们知道可以将代码和模型放在 .cshtml 文件里面或与 .cshtml 匹配的 .cshtml.cs 文件中。Razor页面处理程序或处理方法将用户请求匹配到我们的方法&#xff1…

JFreeChart(八)之时序图

转载自 JFreeChart时序图 时序图表显示的数据点在相等的时间间隔序列变化。本章演示了如何从一个给定的业务数据使用JFreeChart&#xff0c;建立时序图。 业务数据 让我们考虑通过使用标准 Java API 的 Math.random()产生的各种随机数。我们使用这些数字产生一个时间序列图…

立德树人

大家好&#xff0c;我是雄雄&#xff0c;欢迎关注公众号【雄雄的小课堂】。最近&#xff0c;我的个人站上线啦&#xff0c;大家可以直接在浏览器的地址栏中输入&#xff1a;穆雄雄.com&#xff0c;轻轻敲击回车&#xff0c;即可直接进入……

.NET Standard 2.0 特性介绍和使用指南

前言 早上起来.NET社区沸腾了&#xff0c;期待已久的.NET Core 2.0终于发布&#xff01;根据个人经验&#xff0c;微软的产品一般在2.0时会趋于成熟&#xff0c;所以一个新的.Net开发时代已经来临&#xff01;未来属于.NET Core。 对于.NET Core 2.0的发布介绍&#xff0c;围绕…