免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123
最近访问板块 发新帖
楼主: xep007
打印 上一主题 下一主题

有没有PYTHON排中学功课表的相关资料 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2009-01-08 10:18 |只看该作者
原帖由 xep007 于 2009-1-7 17:44 发表

谢谢您一直在回贴。谢谢了!
没有其它要求了。

那么概括一下需求:
1 考试课程安排
1) 一共7门考试课程,3天考完;
2)第1、2两天安排为上午1门课程,下午2门课程;
3)第3天安排为上午2门课程,下午2门课程;

2 监考老师安排
1)现有老师为:语文科老师9人,数学科老师9人,英语老师9人,政治老师5人,历史老师3人,地理老师3人,物理 老师5人,化学老师5人,生物 老师4人,其余另有18人可以任意排;
2)每门课程考试时有27个考场,每个考场需安排1位监考老师,即每门课程考试时需要27位监考老师;
3)每门课程监考所需的27位老师除了安排所考试课程专业老师监考外,不足人员从其它课程专业老师借用,借用条件为:
        3.1) 该老师当日没有本专业监考课程;
        3.2) 该老师(不是领导)或(只监考过一次且不在当日);
        3.3) 该老师监考次数较少;

以上理解正确否?是否还有补充?

论坛徽章:
0
22 [报告]
发表于 2009-01-08 14:30 |只看该作者
原帖由 broader 于 2009-1-8 10:18 发表

那么概括一下需求:
1 考试课程安排
1) 一共7门考试课程,3天考完;
2)第1、2两天安排为上午1门课程,下午2门课程;
3)第3天安排为上午2门课程,下午2门课程;

2 监考老师安排
1)现有老师为:语文 ...

谢谢了!大致是这样的。一个老师半天或一天安排两次甚至三次都没有关系。

论坛徽章:
0
23 [报告]
发表于 2009-01-10 11:15 |只看该作者
原帖由 xep007 于 2009-1-8 14:30 发表

谢谢了!大致是这样的。一个老师半天或一天安排两次甚至三次都没有关系。

如果是这样,可以不必找什么排课算法了,自己先编一些程序看看能不能独立完成,有了一些体会再看算法会更清晰。
1 先固定安排三天的考试课程表,比如以A1代表第一天上午,A2代表第一天下午,B1代表第二天上午,B2代表第二天下午,C1代表第三天上午,C2代表第3天下午;
2 用一个字典保存课程与考试时间,监考老师的对应关系,如{'英语' : [A1,['老师甲','老师乙',......]],......};
3  向字典里填充老师。
shcedule = (A!, A2, B1, B2, C1, C2)
for i in schedule:
    for key,value in dict.items():
        if value[0] == i:
            # 安排本课程老师填入value[1]
            # 安排其它课程老师填入value[1],其中安排策略前面已总结过

4 print 字典

以上流程仅供参考,你可以先写个大概然后不断修改完善即可。

论坛徽章:
0
24 [报告]
发表于 2009-01-10 16:34 |只看该作者
谢谢楼上!我试试。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP