湖南省大学生程序设计所感
这是我第二次参加ACM性质的程序设计比赛,是我们湖南省举办的名为“铁道社”杯的程序设计竞赛,参加的主要是全省的大学生,包括国防科大,湖南大学,中南大学,长沙理工等等。
11号坐了几个小时的火车,赶到湖南农大,农大目前正处于建设中,环境不是很理想,12号晚上是紧张和难熬的一晚,幸好我们队的睡眠情况还可以,不过也出了点小问题,原本睡的安稳,做着美梦(关于比赛的,我们队很轻松),突然队友一脚把放在床上的遥控器踢了下来,也没想到这小小的震动竟把我从美梦中拉了出来,我一看时间才4点多一点点,此后我就开始背古文,无效,又从一开始数数(没有数美女真是失策),还是无效,辗转难眠,最后不知道什么时候睡着了,却是噩梦,发现起来后没一个人,周围黑黑的,开门也是一眼望不到边的长长的黑暗,这几天看了几部鬼片终于生效了……
13号8点举行开幕式,原本是9点开始的,最后由于导入帐号和题目,我们干等了半个小时,在这半个小时里我写下了大大的“沉着冷静”。终于开始了,我们看傻了眼,看得懂的题估计做不了,剩下的是看不懂的,,,我和队友互相提醒,“冷静,冷静”,冷静下来后各自找了个题,研究起来,我发现5题我也许能够搞定,该题是将给出的人分在两个子集合里,使各集合里的人都互相认识,主要还是个图论题,我是这样想的用数组保存人之间的认识关系,然后扫描数组中两个互不相识的人,这两个人必定是分在两个集合里,根据题目要求,我初步确定了用STL里的 set,因为它可以自动排序元素,查找某个元素速度较快。于是我在纸上写了,写完的时候有个队友也写完了,他输入代码,却出现错误,调试要了 一二十分钟,我就在一边等着,最后yes了(一次yes),这道题对鼓舞我们低落的士气无疑是一针强效剂,等他写完后还有差不多三个小时,我的程序很长,写完后,运行,调整代码按题目要求的方法输入,输出格式严格遵循题目要求,过了测试用例,大胆提交了一下没想到也是一次 yes ,队友很激动,差点没把我抱起来,的确这个程序有点长而且是用我不怎么熟悉的STL写的,如果出错,我只有孤军奋战,因为队友没学STL,并且平时我写的程序总要调试一番,今天竟然一次就 yes 的确很让人兴奋,第三道yes 的题是另外一个队友写的,开始这位队友并没有选择这个题,他先做了下第一题,之后又做了下那道和编译原理有关的题,代码是写完了,但此时我正占用机子,于是看了下提交情况发现第二题很多人 yes 了,于是他就认真的看了下第二题,等我yes 完成时,他已经把第二题的代码在纸上完成了,并且说yes 没有问题,于是就输代码了,此时我正吃面包了,此后文件操作出了点问题,但最后也解决了,果然也是一次 yes。 这时我们还有一个多小时,看看提交情况,乖乖我们竟排到了第七,这对我们来说自然很不容易了,我们非常兴奋,以为有希望拿二等了(我们学校是二本,在二本里是中等),因为我们还有时间可以共同攻克一道,对于和编译原理有关的那道题,经过我们一致的讨论认为队友那种方法不可能提交通过,就没写了,而是选择了解密的那道,因为这道题在书上找到了求凸包的方法,由于太激动了,看这题的那位队友,搞来搞去也没把根据给定自然数求出坐标的函数搞定,其实这题我还没完全看懂,但是这位队友说只要搞定这个函数就肯定能搞定这题,我就停下了嘴巴的运动,告戒自己“冷静”硬是把这函数写成功。由于求凸包的方法代码有那么长,我们就每人敲了一点,测试了一下书上的用例答案正确,但要移值到比赛的题里还需要修改代码,由于那位队友有点急了(其实我们都差不多,因为由于时间差我们被刷退了几个名次)改到最后,竟l 当L使用并且没有初始化,一传到我写的那个函数里就出现了不应该出现的数据,以为是函数错了,查了很久才发现是没有使用初始化的L,改好这里后,运行测试用例结果还是不正确,完了,因为我和另外那位队友都是理解部分代码,想要帮忙也无能为力,看着那位队友改来改去就是不队,我们也无能为力,最后以失败而告终(解密这题好象全场都没人做)。。。。。。看下整体提交情况,我们是二本里排名最前的……
总结: 做题一定要“沉着冷静”切忌“心浮气躁”,开始选题一定要慎重 !我多想明年再参加一次,可惜就要毕业了……
评论