OJ双人赛:程序设计竞赛的新尝试

时间:2022-01-08 14:24:14

早就想在所教的班上组织一次程序设计竞赛,直到冒出双人赛形式的念头。出题、分组、竞赛,又是一次新的尝试。
做为在教学环节中组织的竞赛,不同于自愿报名的竞赛,必须全员参与。享受比赛要追求,培养团队意识也要有,不致于打击学习还不顺利的,甚至学习不投入的同学,这个也必须有。给予后进者适度的刺激和思考,也要有的。我在近三年的教学中,带领同学们通过发博客积累代码行(
2011级
2012级
2013级),效果还是不错。综合看来,日常的教学用博客,而不是OJ,是有优势的(见《
CSDN博客和OJ,两种积累编程代码量的方法对比》)。只是,各有各的好,用合适的方式用,发挥各自优势,这是比较的目的所在。

昨天的比赛中,氛围明显不同于平时的上机。我教的是两个自然班,整个比赛从名字上叫“班级大PK”,适度弱化个体,鼓励集体主义。当然班级成绩是建立在各队基础上的,同学也有强烈的愿望让自己的二人组合有个好的排名。如何组队,我没有要求,由班长和课代表征求同学意见定,无论强强联合的,还是强弱搭配,都是一种策略。

最后的结果,28队中,有17个队AC一道题,有9个队AC两道题。原本想着会有队提交到三、四道的,但没有。有些尝试了四道题,毕竟在OJ平台上,提交不成功的原因很多。这是第三次正式要求他们用OJ,且比赛时间仅有1小时20分钟,结果我已经很满意了。

实践之后,看双人赛(一组两个人)的形式,还真不错,区别于正式ACM程序设计比赛中的三人一个小组,也区别于大多数在练习中的单打独斗。

双人赛和三人一组相比,两个人得要有合作,但相对而言,交流和合作的难度要小得多,组员的参与程度高。更有利于在初起步时培养合作能力。只有极个别组是一个人干,另一个人看,这作为全员参加的以促进教学为目的的比赛更合适。一直鼓励的“有兄弟不孤单”,也充分体现到比赛中来。敏捷编程中有个“结对编程”,双人赛可以与之对照。

双人赛不同于一人一组。我知道在编程竞赛中。一人参赛,培养的是独自(比“独立”狭隘)工作能力,只有竞争,没有合作,在教学中,我并不愿意采用。一人一组对做顺利的尚可以洋洋得意,可以想到学习状态尚处于需要上升的同学,垫底的负担要一个人承担,那滋味不好受。

另外,作为利用上机课时间的比赛,比赛秩序依靠同学们自觉,场面也不能太乱,双人赛的形式也是一个折中。

结论:这次的策划非常成功,全员参加的教学中的编程竞赛,双人赛优于个人赛,也优于三人一组的比赛。

补充一个花絮。

去年教学中,为解决有的同学课堂打瞌睡问题,每次上课我要带几块糖或奶片。给打瞌睡的学生吃一块,提提神。因此12级的学生对此念念不忘。这是给学生吃东西的原始动机,并不是贺老师的什么爱心,却成了不少同学的美好回忆。可是结果呢?吃完照打瞌睡,根本原因是有些同学作息时间有问题,或者身体状态调整并不顺利(我在大学睡在课堂的故事很多人都知道)。想一想,打瞌睡的人能吃,好好听课的人吃不上,也是一种不公平,于是在期中时,所有人都有份,吃过一次。这种课堂做法,到13级时就决定不常用了。

可是,12级的在给13级的传经验时,总说,贺老师会给你们吃糖。天哪,被出卖了。这些师兄师姐真好,对师弟师妹而言。我的压力渐增,看来给13级的也吃要一次。

于是,就乘着这次比赛吃吧。想好了优胜者发德芙巧克力,其余人赛后也人人有份,就大白兔奶糖了。比赛开始,我却临时改变主意,告诉同学们,ACM比赛升气球,我们是发糖,AC一个,就吃一块糖。我就看着赛况,做起了服务人员,有人举手示意要糖,更多人继续忙于比赛,我发现了就主动奉送。AC人的幸福++。

比赛即将结束,我担心带的糖不够了。买的时候照大概一人一块买,最后然后又多抓了两把。这年月,糖死贵了,我家里也没有人吃糖,不需要多买。

比赛结束,给没有AC的同学悄悄给了“安慰奖”,鼓励他们还要努力。这时仅剩两块,有一组没有AC的没有写姓名,混乱中,我也没有想出谁还没有吃上。

贺老师水平真高,买糖的水平!实在高。

这次双人赛,对学生,对我,都是一次别样的体验。

==================== 迂者 贺利坚 CSDN博客专栏=================

|== IT学子成长指导专栏 专栏文章分类目录(不定期更新) ==|

|== C++ 课堂在线专栏 贺利坚课程教学链接(分课程年级) ==|

======== 为IT菜鸟起飞铺跑道,和学生一起享受快乐和激情的大学 =======