avatar
a*y
1
There is a set of 9 students and 3 schools Every school can be alloted at
max 3 students .Every school and student has its coordinates .Now we have to
allot student in such a way that the sum of distance from all the student
to the school should be minimum.
穷举太费时了
而且第k次应该不是建立在min(k-1 )次的,想想有可能学校之间距离很长,有点学生
离第一个比其他的近一点,但是其他的学生可能离这两个学校更远,
avatar
f*e
2
weighted最大流 or minimum cost flow。每个学校capacity为3,每个学生入流为1。
可能是这个方向吧?
建立一个bipartite图,左边是源点s,入流是学生数目,与每个学生有一条连线,
capacity是1,然后是学生,然后是学校,学校与sink t的edge capacity是3。
http://www.cs.tau.ac.il/~zwick/grad-algo-06/min-cost-flow.pdf

to

【在 a*******y 的大作中提到】
: There is a set of 9 students and 3 schools Every school can be alloted at
: max 3 students .Every school and student has its coordinates .Now we have to
: allot student in such a way that the sum of distance from all the student
: to the school should be minimum.
: 穷举太费时了
: 而且第k次应该不是建立在min(k-1 )次的,想想有可能学校之间距离很长,有点学生
: 离第一个比其他的近一点,但是其他的学生可能离这两个学校更远,

avatar
j*o
3
min cost flow 是一个SOURCE,一个DESTINATION吧?
这个图是说学生都是源点,那共有9个源点?
我没搞清楚这个BIPARTITE GRAPH怎么画。。
REQ DETAIL
THX

【在 f*****e 的大作中提到】
: weighted最大流 or minimum cost flow。每个学校capacity为3,每个学生入流为1。
: 可能是这个方向吧?
: 建立一个bipartite图,左边是源点s,入流是学生数目,与每个学生有一条连线,
: capacity是1,然后是学生,然后是学校,学校与sink t的edge capacity是3。
: http://www.cs.tau.ac.il/~zwick/grad-algo-06/min-cost-flow.pdf
:
: to

avatar
g*y
4
DP? C[i][x][y][z]: the minimum distance sum when there are i students, and
each school can get x, y and z students. (i = x+ y+z)
avatar
l*h
5
分几步走
1,9个学生平均分配到3个学校(这步也可以优化一下提高效率,也可以随机分),假
设学校编号为1,2,3。
2,计算是否有学校1的一学生移动到学校2,学校2的一个学生转到学校3,和学校3的一
个学生转到学校1,其总的距离增加量为负。重复直到不能再减少总距离。这步简计为1
一2一3。
3,类似于步骤2,做3一2一1。
4,重复步骤2和3,直到不能再移。
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。