做题出现的问题总结

来源:互联网 发布:公务员考试网络课程 编辑:程序博客网 时间:2024/05/17 06:45

导致写这篇文章的直接原因是昨晚的codeforce,在1600+的大好形势下,冲击div1,结果最后悲剧的只出了一个题,rating又跌。

题目不会吗?不是,但为什么做不对呢?暑假集训了一个假期,现在才总结显然是晚了些,许多东西都无法改变,但这段时间的训练进步还是有的。

从自身角度讲:首先是读题。英语一直算是自己的短板吧,但来大学之后因为其他的科目较好而掩盖了,显得不突出。但毕竟是不好,读题,理解题意比较慢,但也因为自己比较细心、仔细而不是吃太大的亏。最近做题有点急,有点静不下心来,所以许多题做不出来就差在这儿了。不如昨晚的C题,自己读的有点慌,写的时候本来应该考虑的情况却认为不会出现,最后挂掉了。还有昨天下午的一个题,题意要求求出两个城市的距离后就四舍五入, 没看到这句话,结果最后总是有偏差,只能百思不得其解。前几天做一道超长的日历的模拟题,题目中有许多小trike,而自己在没读明白的情况下,就去写,一次一次的WA,又无可奈何……总之,最近读题是个问题,如果不够仔细,自己这块短板怎么补,

ps:前两天查六级成绩,木有过,唉!自己不要心存侥幸,踏踏实实吧。

然后是关于出错如何检查。感觉这要不话很少时间,要不浪费我很长时间。昨天的D题太2了,最后概率结果应该相乘,我却写成了加,怎么检查也检查不出来。后来想想是刚开始的思路和后来写的思路不一样,刚开始结果是要加起来,但最后思路改了,而这个地方已经写好了却没改。如果不是通过例子来发现,怎么检查也无果呀!所以当程序出现问题后如何检查很重要,要么你这题马上就该过来,要么就要花比读题、写题更长的时间来检查。我觉得应该这样检查:1、仔细的看一遍代码,看是不是那个地方写挫了。比如:i和

j写反了、没有初始化、输出格式、stl没有清空……就是尝试发现最简单、低级的错误;2、当发现没什么问题,但还是不对,自己要去写数据来测试(如果不是太麻烦)。其实这是最有效的测出错程序的方法,先出一些普通数据,然后是极限数据,最后是大数据。这个可能比较难,但不失为一种尝试的方法。3、再次读题,不用把原题逐字逐句的读一边,估计也没什么耐心,根据自己的理解,对容易出错的地方做出判断,然后回到题目中仔细的比照,看自己是否漏掉什么细节或理解错误。4、还是出错,这次就把题目中的判断条件都添上,比如题目中说输出要求某两个数不同(尽管你认为会不同,但还是加上判断)。程序尽量保持前后的一致性,比如广搜,结点状态和外边开的数组的状态尽量一致,把自己不常用函数,语句改为常用的……如果仍不行,那换题吧,我觉得

上面这些这都是做题中出现的问题,做完题后要有做这道题的收获,学到了什么新东西,要及时记下来,如果可能做成模板或写成题解(说实话,自己太懒,这点做得不好)。也有可能发现自己以前什么东西忘了,再回去翻翻书,看看代码,多写几遍。

要培养对题目的判断能力,觉得做这个题难度多大,需要多长时间,不要光给自己上难题,那样一天做不了几个题,进度很难保证。

对自己要求严格一些,有规划。每天必须做出分类的一个搜索,一个模拟,usaco每天一道(发现usaco题目很经典,解法不唯一,再做一遍,就从今天吧)然后再做其他的。

时间不多了,加油呀!