百度之星作为座位调整java_百度之星2006年初赛 座位调整
做法就是KM算法
我的建图过程如下:
把食品供应点拆开,不要让他成为一个点,如果一个食品供应点能够供应2个人,那就把它拆开成两个点,由于食品供应点的所有人数之和是等于员工数的,所以刚好构成一个两边点数一样的一个二分图,然后从员工到供应点连边的边权就是喜好度,然后再用KM算法进行最大带权匹配就好了,最后建的图是一个M*M的矩阵,由于M小于300,所以KM算法能够过。
也见到过别人用DP过掉的,不过没有想通。。DP一直很弱。。
话说我已经退役了,这个博客很少用了。。
#include
#include
#include
#define inf 99999999
#define maxn 305
using namespace std;
int n,m;
int a[maxn];
int map[maxn][maxn];
int temp[maxn][maxn];
int link[maxn];
int lx[maxn],ly[maxn];
bool x[maxn],y[maxn];
bool dfs(int u)
{
int i;
x[u]=true;
for(i=1;i<=n;i++)
{
if(lx[u]+ly[i]==map[u][i]&&!y[i])
{
y[i]=true;
if(link[i]==-1||dfs(link[i]))
{
link[i]=u;
return true;
}
}
}
return false;
}
int main()
{
int i,j,k,num;
while(scanf("%d%d",&m,&n)!=EOF)
{
for(i=1;i<=m;i++)
scanf("%d",&a[i]);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
scanf("%d",&temp[i][j]);
for(i=1;i<=n;i++)
{
num=0;
for(j=1;j<=m;j++)
{
for(k=1;k<=a[j];k++)
{
num++;
map[i][num]=temp[i][j];
}
}
}
memset(x,0,sizeof(x));
memset(y,0,sizeof(y));
memset(link,-1,sizeof(link));
memset(ly,0,sizeof(ly));
for(i=0;i
lx[i]=inf;
for(k=1;k<=n;k++)
{
while(1)
{
memset(x,0,sizeof(x));
memset(y,0,sizeof(y));
if(dfs(k))
break;
int d=inf;
for(i=1;i<=n;i++)
if(x[i])
for(j=1;j<=n;j++)
if(!y[j]&&lx[i]+ly[j]-map[i][j]
d=lx[i]+ly[j]-map[i][j];
for(i=1;i<=n;i++)
if(x[i])
lx[i]=lx[i]-d;
for(i=1;i<=n;i++)
if(y[i])
ly[i]=ly[i]+d;
}
}
int ans1=0,ans2=0;
for(i=1;i<=n;i++)
ans1=ans1+map[link[i]][i];
printf("%d\n",ans1);
}
return 0;
}
百度之星作为座位调整java_百度之星2006年初赛 座位调整相关推荐
- 搜索引擎大调整:百度出“惊雷算法”后360搜索又将上线“八戒算法”
可能大家都也听说了百度在11月20日发出的算法预告"惊雷算法",而就在昨天,11月29日,360搜索站长平台发布"八戒算法"将在12月初上线,旨在打击低质量站群 ...
- 聚观早报|饿了么星选停止运营;百度2022财报全年营收1236.75亿元
今日要闻:饿了么星选停止运营:百度2022财报全年营收1236.75亿元:微软收购暴雪获力挺:全国首例!这一代练平台被叫停:现代汽车已开始在美国生产电动汽车 饿了么星选停止运营 2 月 22 日,饿了 ...
- 2019年度星标大奖重磅揭晓 百度APP携手ZOL“智见未来”
12月26日,由百度APP与ZOL联手举办的"智见未来"峰会--暨2019年度星标大奖颁奖盛典在北京举行.此次盛典行业领袖.产业专家齐聚一堂,共同探讨科技产业最新趋势及最热产品话题 ...
- 从内部架构大调整看百度2015年的战略方向
调整 李彦宏发内部邮件称,将现有业务群组和事业部整合为三大事业群组. 大概的调整是这样的: 1.移动云事业部和LBS事业部合并为移动服务事业群组,由副总裁李明远.副总裁刘骏负责,刘骏转向李明远汇报; ...
- 网站排名全掉了怎么办,百度算法调整,百度关键词排名波动怎么解决?
导语:企业建立网站后,想要得到更高的自然流量,SEO肯定是最好的方法之一今天我们就聊聊: 网站排名全掉了怎么办,学会这几招轻松解决问题!百度算法调整,百度关键词排名波动怎么解决? 网站排名全掉了怎么办 ...
- 百度统计接口 java_百度统计API的使用
百度统计API的使用 在搭建自己博客的时候,希望自己能有个日志系统,能够看到PV.UV等信息,同时自己也搭建了个ELK系统,可惜服务器配置太低(1GHZ+1G内存),根本运行不起来.只能使用第三方的日 ...
- 百度地图批量精度和维度Java_【百度地图API】如何批量转换为百度经纬度
摘要: 百度地图API的官网上提供了常用坐标转换的示例.但是,一次只能转换一个,真的非常麻烦!!这里结合了官方的示例,自制一个批量转换工具,供大家参考. ----------------------- ...
- BAT 再无百度!互联网十强还会有百度吗?
点击"开发者技术前线",选择"星标?" 13:21 在看|星标|留言, 真爱 燃财经(ID:rancaijing)原创 作者 | 闫丽娇 苏琦 编辑 | 苏琦 ...
- 百度推广——搜索营销新视角(百度官方出品,俞敏洪、吴晓波、徐雷力荐!)
百度认证系列丛书 百度推广--搜索营销新视角(百度官方出品,俞敏洪.吴晓波.徐雷力荐!) 百度营销研究院 著 ISBN 978-7-121-20311-4 出版年月:2013年6月出版 定价:59.0 ...
最新文章
- 《强化学习周刊》第35期:强化学习在智能交通中的最新应用
- 通过tomcat实现多域名配置
- u盘读写测试_如何提高u盘读写速度 提高u盘读写速度方法【详细步骤】
- 推荐几个配色和图标网站
- 初学echart的简单使用
- 关于生活,可能有用的40条建议
- idea怎么找到路径下面的js_怎么找到Win7桌面存储路径?怎么把Win7桌面转到D盘?...
- mysql 6.17,mysql小结篇2(17.6.27)
- mysql双主日志_MySQL双主双从配置开启二进制日志
- 22021成都市高考成绩查询,四川大学本科教务系统登录
- 解决删除symantec,需要输入密码的问题
- csu1164 Dominating
- RocketMQ消息存储学习
- 无需关注微信公众号破解openwrite验证
- 微信PC端浏览器内置浏览器
- python爬12306_爬虫12306返回数据怎么解析
- 通过keil使用汇编语言生成二进制文件,并使用vivado仿真cortexm0处理器
- 必知C++算法之排列组合基本操作
- 如何用python画一束花_如何在AI里绘制一束春天的花朵
- iOS H5 获取麦克风权限
热门文章
- python批量裁剪图片_用Python写了一个图片格式批量处理工具
- 大数据与大量数据处理_我们如何处理和使用如此大量的数据?
- 程序员里面开源_如何以开源程序员的身份开始
- 智慧社区互动教室_利用研究与社区互动
- 如何击败腾讯_要击败这个新的电子游戏,请对其重新编程
- 前端:HTML/02/排版标记,块元素,行内元素,html字符实体,列表标记,图片标记
- es6 SharedArrayBuffer对象
- es6 Promise.done(),Promise.finally()
- 厦门大学计算机学硕复试,【图片】一战厦大计算机上岸,经验帖。慢更【考研吧】_百度贴吧...
- CAN笔记(21) 服务数据对象