算法的基本要求:
1,考生应尽可能按照靠前的志援录取;
2,各学校专业尽可能按照高分录取。
只要满足如上两个原则即可设计出合理的算法。具体实施如下:
1,各院校各专业把全部选该专业的考生形成一个集合(假设有M个),按照高低分排序,形成队列Ai(i=1,2,...,M),并按照名额初步录取前Ni名。
2,按照每个学生逐一遍历,形成被录取的集合S,并按照志愿排序,最靠前的被录取志愿获胜。
3,按照第2步被录取后的学生名单,更新第一步中各队列。
反复1,2,3直至各专业都录取完毕。
不一定最高效,但能够实现。
--
修改:vcGans FROM 39.155.237.*
FROM 39.155.237.*