编排考场的问题,比较复杂,不知道能不能用算法来解决?
描述如下:
1.有N个学校的学生参加考试,每个学校的考生人数是不定的,取值范围在1-10000之间;
2.将上述学生安排在某个考场参加考试,该考场有M个考室,这M个考室所能容纳的学生不一定都相等,但这M个考室能容纳的学生数肯定大于上述1中的学生总数;
3.要求:
如果一个学校的考生必须安排在几个考室的情况下,则必须排在连续的考室中,不能中间间隔一个其它学校的学生;
如果一个学校的考生能尽量安排在同一个考室的情况下,就不要安排在两个考室中,除非必须拆分;
在同等的条件下,学校的代码(在实际做数据库的时候有一个XXDM来标识学校代码)小的优先考虑;
排过的考室(座位)和学生都不得重复排,即只能排一次;
4.根据上述要求给出最优解,即如果必须拆分组合才能排完考生的情况下,给出最小的拆分组合解来,这个解应该是学校代码和考室的对应.