码迷,mamicode.com
首页 > 其他好文 > 详细

会场安排问题

时间:2016-11-10 01:31:00      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:nbsp   结束   开始   mic   问题:   span   ges   com   技术   

问题:

  假设要在足够多的会场里安排一批活动,并希望使用尽可能少的会场。

  (这个问题实际上是著名的图着色问题。若将每一个活动作为图的一个顶点,不相容活动间用边相连。使相邻顶点有不同颜色的最小着色数,相应于要找的最小会场数。)

思路:

  将n个活动1,2,....,n看做实直线上的n个半闭活动区间(s[i],f[i]])。

  所讨论的问题实际上是求这n个半闭区间的最大重叠数。

  因为重叠的活动区间所相应的活动是互不相容的。若这n个活动区间的最大重叠数为m,则这m个重叠区间所对应的活动互不相容,因此至少要安排m个会场来容纳这m个活动。

  如图:

  技术分享

 

  将所有的时刻(开始的,结束的)按顺序排在一条线上,然后从这条线的开头往后面走,遇到的时刻是开始的话,重叠数就+1,遇到的时刻是结束的话,重叠数就-1.

代码:

  还没完善好,以后更新。

 

会场安排问题

标签:nbsp   结束   开始   mic   问题:   span   ges   com   技术   

原文地址:http://www.cnblogs.com/jacklovelol/p/6048973.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!