湖应ACM程序设计竞赛2022
湖应ACM程序设计竞赛总结
这也许是我专科最后一次参加算法竞赛?心里莫名有点惆怅....
又是一次质疑我的学习策略的方法。
这次比赛我将从以下几个方面分析:
考试分析:
1.考场心态。
还算稳定,其实遇到了不少困难。学弟在旁边的打扰还有多次CE的经历,都让我很慌张。这次的比赛并没有延续acm的罚时机制,我知道...如果搞这个,我不知道要WA多少次。因为很久没用这个软件,考前没有测试,以致于考试时多次提交代码到了另外一道题目,这一点粗心十分需要改正。多亏...后面还有几分钟,让我在最后几分钟又AC了一道题,不然五道题我压根进不了前三。不少大一的都写了四道题,回想自己的水平确实有点差.....
2.题目质量。
果然题目水平参差不齐,相比较去年的确实是在难度上有所下降。就我的观察来看,每个人发挥的水平基本上很难稳定,就比如说曾老师上次蓝桥杯B组省三,这次直接做9道题,出人意料。仔细分析其中原因,也许是曾老师可以灵活运用算法的缘故,也有可能是题目难度的质量在中低水平,曾老师可以把握得更好。而我的优势在会更多算法的写法。
那么像我这种人要提升在这种竞赛的水平,只能建立在多做题(简单的模拟题也要做)上面,掌握更多的思路。
3.做题策略。
警惕低效做题。
具体应该体现在:
一、先浏览一遍题目难度,把看上去就会的题目标记好做了。一定要迅速debug成功,练练手速。
二、看对题号,再提交,以免多次WA,和无效的debug尝试。
三、先分析做题的几种方式,思考到底哪种写法更简单,不要上来就写题目,每次写着写着找到了更简单的方法,十分低效。
四、如果想不出题目该用什么算法来做,没有分析出里面的规律,去回想一遍所学过的算法,一个个去套。
4.做题反馈。
这次的题目做了五道题出来,但是二进制应该是没问题的。有一道dp题,我有点抗拒心理,又因为花了不少时间解决2008那道题的CE,浪费了不少时间,以致最后没时间去看。还有一道,双指针题目,有点儿没观察出来是双指针的算法。还有那个26进制题目,我总觉得自己能做出来,但是不知道从哪里下笔...找到了对应的思路,但是又没有彻底解决。那个蛇形矩阵,明明以前做过,但是....没想到现在做不出来了,思路还存在脑子里,但是想不起怎么实现了。其实如果时间充分的话,这道题我debug应该能调出来。
复盘
这次比赛凭个人年老的资历,刷题刷的多拿下了我们学校考场的第三名。我认为曾学长能做到的,我也能做到,这次没做到那么多确实很懊恼和惭愧,各方面的水平确实还不能比肩。最主要是在考场要迅速多考虑几种解法。
后续的学习:
1.上课时。我会在上算法课时十分专注,尽量在上课就把不懂的内容给消化掉。上课要抓住老师的重点,要去思考,现在老师讲的内容到底是想阐述什么?是在讲算法的证明还是什么?和老师刚刚说的内容存在何种关联?要积极主动思考这道题难道只有这一种解法吗?能不能多题一解,仔细思考。这道题的时间复杂度是什么?为什么是这个?
2.练习。通过写题解的方式把算法搞懂,要形成系统的笔记,参照别人的笔记,自己写出来;把对应的习题独立做完,不贪快,如果遇到不能独立完成的习题/不会的内容放到anki多次进行记忆,在复习的时候去思考,为什么要那么做,能不能不这样做;
3.自检。在做完acwing一章的题目,去检验自己到底是记住这道题,还是掌握了这道题,在洛谷上给自己找几道题,同之前学过的内容掺杂混合在一起,每周进行个人训练一次,检验学习成果。旨在搞清楚到底是熟练度错觉还是自己真的掌握了,还有是提高对知识的灵活运用程度,形式和acm制度差不多,10道题,5个小时内解决。
4.每月参加一次小白月赛。提高上竞赛考场的心理素质。