大家好,我是bigsai,好久不见,甚是想念。
这段时间断断续续有些学弟问我参加蓝桥杯有木有一些建议,我也给了我的想法和看法。当然,网上对蓝桥杯的看法不一,我就针对大学生参与竞赛的目的和备战蓝桥杯两个方面给大家分享一下。
(笔者研究生组国一,运气好一些惊险拿一等)
竞赛的目的
当我们报名一个比赛的时候,你要清楚你报名的目的是什么,有目的才能有动力去变得更好成就更高。
通过竞赛驱动学习:通过参加竞赛提高自己视野、编程能力、算法水平,很多人报名的时候都是小白的起点一点点摸索,在比赛准备的阶段不断学习,不断进步,这个备赛的过程给自己带来很大成长, 这也是参加竞赛最大的意义。
竞赛加分:参加一些含金量较高的比赛,对有些人保研加分,评奖评优加分。这里多说一点,各个学校认可的比赛和比赛所属等级是有些区别的,有些比赛甚至和学校有些联系的学校会强行认可(例如某at,某cf),如果为了加分还是推荐优先参加学校认可的比赛。还有些新的比赛但是比较水有的学校也会给加分,这类比赛一定不要轻易放过!
竞厚的奖品或者奖金:有些比赛会有些诱人的的奖品或者奖金。现在,各个公司组织都想发扬光大自己的声名,会通过自己创建一些比赛吸引人参加,可能还会有挺不错的奖金(这类大部分都是大公司牵头的一些比赛),竞争力相对也没那么大,有些公司还会对参与者送一些一年VIP或者云服务器之类的(加油白piao),如果自己或者身边有小伙伴有兴趣可以顺势参加(技术可以一般但一定要有个会吹会说的小伙伴),展现你强大演讲和PPT能力的时候到了。
为了工作:为了得到一个较好的竞赛结果,能够添加到自己的简历中。很多人前期会因为比赛水而不参加比赛,但是到自己写简历时候获奖荣誉光秃秃的,只能强行凑一些(大把甚至都凑不出来),如果你学历又不占优势,简历其他地方又没太大靓点,真的挺容易被pass。虽然说比较公认的比赛就那几个(ICPC、CCPC、数学建模、互联网+等等),但那些比赛我们普通人可能真的连参与机会都没有,如果你有非常棒的荣誉可以包装自己那么比较水的比赛你可以不参加,但是如果你没啥竞赛荣誉我还是推荐你参加一些润色一下自己简历不会显得太尴尬哈哈。
检测自己学习情况:通过参与一些竞赛看看自己的学习情况如何,这类一般比较佛系。
总的来说,通过参加竞赛,大部分都是能够给自己带来全方位、宽领域、多层次的提高,一丰收具丰收,但大家不管参加啥要放平心态,如果成绩不太好放平心态下次再来,全当体验学习的过程。
不过现在比赛种类非常多,也不要直接闷头全报名,有的报名费不菲但认可度很一般或者方向很偏浪费时间(有很多公司的比赛可能要求使用某些自研产品可能比较耗费时间)要慎重考虑下。
当你明白这些,对于大部分人来说,蓝桥杯其实还是能击中上面的几个点的,目前这个竞赛的情况是:
不算很顶尖,但是也不是特别差,算是不错的竞赛,受众比较广各个层次院校的都有(上到顶尖985,下到专科院校),比较适合普通人。
你应该这样准备
组队学习:学习数据结构与算法对大部分人来说本身是一件痛苦和枯燥的事情,做到坚持和自律也很难,有两三队友(不建议太大)一起学习、一起刷题,学习刷题上可以相互鼓励、相互督促。还有另外一点就是学习和刷题路上可能会遇到很多坎坷,每个人可能被卡主、想不明白的地方有所不同,当你被卡主,你问一个陌生人问题,他可能不会给你解释超过三次,但是你的队友会顺着你的思路给你纠正过来给你讲10次。当然,学校如果有竞赛刷题社团也可以参与,有很多学长会帮忙解答和培训。
体系化刷题:工欲善其事,必先利其器,盲目的刷题很容易给自己带来很多挫败感,刷题前可以给自己安排一套学习和刷题路线。从简单专题刷起,然后再慢慢加深,这个顺序可以参考网络上有人分享的ACM(现在叫ICPC、CCPC))刷题入门顺序去刷一些题。比如说可以从a+b,输入输出简单开始入门,然后简单数学题、哈希、字符串、贪心、动态规划、搜索、图论、数论等等(树状数组、线段树、并查集、快速幂、博弈、计算几何、模拟)一个专题一个专题突破。
抓重点,合理分配时间:算法是学不完的,体系也很庞大,有些数据结构或算法比较难、学习成本很大(数论、几何数学等等),出现频率非常非常低并且长期不接触很容易遗忘,对于大部分开发同学或非ACM选手来说,不建议磕这类算法太久,你可能还有很多其他事也要做,更建议扎实巩固多刷一些考察高频、重点的数据结构和算法,去参加蓝桥杯大赛、面试、机试是完全可以取得很不错结果的。(有能力的同学后面可以自行研究拓展)。
多参加网络赛体验: 有机会多参加一些网络算法竞赛,体验熟悉一下竞赛的流程,衡量自身的情况和不足。比如牛客、codeforce的一些比赛可以去体验一下,还有一些学校开放自己学校的算法竞赛可以在各大OJ或者社群里面去参与竞技,让自己成个老司机多点竞赛经验。
最重要一点(持之以恒) 坚持刷题,每天都要坚持花一些时间刷题,扩大刷题量,刷的多了,存在的问题就会少了。初期猥琐发育,踏踏实实刷题扩大题量,如果你感觉你有问题大概率是刷题量不够导致的。中期多找方法,多归纳总结,将所学、所刷的题有个小体系的概念。坚持下去,后期就无敌了!
小技巧分享
竞赛前:关注下蓝桥杯历年试题,找到蓝桥杯竞赛易考的高频问题,例如日期区间计算问题,字符串匹配算法,常见动态规划,贪心算法,搜索等等,经常出现在考卷上。你把最近几年的考题考察内容全部记录下来,按照频率排个序,你马上就知道自己需要加强那一块了。建议把历年试题搞懂,也可以找一些试题讲解课程。现在准备不用太担心,上面有不少送分题的,这些送分题考察点最近几年的很相似比如素数、合数、时间日期、简单数论这些一定得拿下!
练习系统首页:http://lx.lanqiao.cn/
真题链接: https://www.lanqiao.cn/courses/2786/learning/
竞赛时候:合理安排时间,蓝桥杯竞赛4小时时间,题目先易后难,代码量和逻辑复杂的放在后面。填空题只要答案,代码能跑出来就行(规则允许范围内,有的熟悉excel用excel解题)。编程题根据数据范围选择自己会的方法,有些可以通过全部测试案例的算法如果不会,可以看下测试案例范围用一些搜索、枚举等方法剪枝尽量多的分。还有就是蓝桥杯OI赛制竞赛时候不知道自己代码是否真的正确,除了题目提供的测试案例很有必要自己准备一些测试样例验证一下。
竞赛后: 放平心态,如果结果不理想也不要气馁,坚持刷题,下次再来。
我自己本科第一次参加蓝桥杯的时候,虽然入围国赛了,学校 J 老师带着一行23人去北京北方工业大学考点,那是我第一次去北京,也是我暂时唯一一次去的北京,当时水平在中游但是最后优秀奖都没得(一行23人就我一个没奖)当时回来时候还是感觉挺尴尬,不过调整很快一次失败不能代表你就不行了,好好的继续原来的步伐就行了。
但这不妨碍这次竞赛去拿了国一突破自己(当然是运气比较好了,所以说运气也是非常重要)。
结语
到这里,本篇的分享就差不多啦,至于认不认、含金量、值得参加吗这些问题我觉得老是纠结这些问题没啥意思,一年一次费用也还行可以接收,还有一些同志把4小时比赛总是感觉要花他几个月钉上去似的。
时间比较多,低年级学生可以通过参加一下认真准备学习一下,花时间刷题学算法也不亏,如果高年级时间不多那就顺势参加一下呗。
还有一些同学会问刷蓝桥杯跟刷力扣有啥区别,嗯我觉得刷力扣的目的就是为了面试笔试通关,更多关注简单、中档题的高效解答。而蓝桥杯简单中档题是决定能不能拿个还不错的奖项,如果想向顶端突破那肯定要掌握一些处理难题的能力了,在这方面刷力扣的可能会接触不到或者接触这类题型比较少,但是如果你即将就业我还是推荐你刷力扣为主,顺便参加个蓝桥杯就好,毕竟算法在很多大的方面是通的。
还有一些小伙伴问我有木有一些蓝桥杯的学习资源,我说这个本渣渣虽然没看过但是也曾在某宝花了几十买了好几十G的学习资料,里面除了蓝桥杯还有一些不错的算法学习资源,这里我也分享给大家,大家在我的公众号【bigsai
】回复【蓝桥杯
】自行领取啦(活雷锋在此不谢)。