我有以下问题需要解决:
如果没有限制,很容易 - 对于每个城市,我们确定最近的实验室并用于处理样品。但是如果有容量限制,某些实验室可能会出现溢出,所以我们需要找另一个实验室来处理这个城市的样本(当然,这个实验室会更远一些)。
那么,问题是:如何按距离以最佳方式分配样本流并且没有溢出?
我相信这是一些众所周知的算法。请你,至少告诉我它是怎么称呼的?
谢谢!
答案 0 :(得分:1)
尝试将其视为bipartite graph,尝试maximize the flow:
从最近到最远的顺序排列城市和实验室之间的距离,然后遍历列表并且:
x
个样本从城市移至实验室 - x=min(max_lab_capacity, number_of_samples)
。