这次竞赛中,参加铜牌组的共有5400人,银牌组的4476人,金牌组的1078人,白金组的只有432人。可见,银牌组的竞赛是一道坎,过银牌组有资格参加金牌竞赛的人员数量急剧变少,到了白金级别就更少了。
身边的学生,大部分也都是参加铜牌和银牌组的竞赛,本次这两个级别的过线分数都是800 分,只要超过这个分数,就能成功的晋级。竞赛成绩公布后,有几位家长都在和我交流,说这次很顺利的通过了,并且身边也有一些同学顺利通过了,而这些学生在12月份的那次考试中,都是没能通过的,是不是一月份这次的题目更简单些呢?
我们就拿铜牌组的题目给大家剖析一下这次竞赛题目的几个特点:
题目非常灵活
一般铜牌组的第一道题目都是比较容易的,例如12月份的第一道题目,基本上就是送分题呀。但这次竞赛的第一道题目,竟然难倒了不少人。身边有一位能力不错的学生,后面两道题目只用了一个半小时就全部解决掉了,最后竟然卡在了第一道题目上,他把第一道题目想的无比复杂,最终完全把自己绕进去了,没能做出来,从而和晋级失之交臂。
这次铜牌组的第一题确实出的非常灵活,很多学生第一遍都没看懂题目,好不容易看懂题目后,觉得之前的算法好像都套不上去,一下就卡在那里了,其实如果能够稍微做一个模型变换,那题目就会变得非常简单。
着重考核问题分析的能力
第二道题目和第一题有所不同,粗看上去,感觉套用好几种算法都可以,例如模拟,贪心,枚举等都可以把题目做出来。但真正实现的时候,又会发现很多细节问题。这道题目特意给了一些具体的数字,但其实问题的求解,和具体数字没关系,而是和奇数,偶数的个数有关系,如果对问题分析到这一步,基本上都是能够解答出这道题目的。 所以这道题目的难点,是对问题本身的分析,很多学生总以为编程学习的是编写代码的能力,但在USACO竞赛中,分析问题才是核心能力。
迷惑性强
思考是一种很耗费体能的事情,所以人的大脑往往在找到一种解答方案后,就不愿意继续工作,寻找更好的方案了。这次竞赛的第三道题目,给人的第一印象就是使用深度优先搜索算法,直接计算出对应的结果。但由于这种算法复杂度太高,它并不能完美的解决这个问题,只能做对一半的题目。而这道题目的正确解法,则是需要通过数学的乘法原理对题目进行思考,从而给出一种效率非常高的计算方法。
从上面的分析大家可以看出,相比于12月份的比赛,我感觉1月份的题目会更难一些,但从身边学生通过率来看,又比12月份要高。这其中应该是两个因素提升了通过率:第一,很多学生12月份是第一次参加,难免会紧张一些,对考试流程都不熟悉。第二,在这一个多月时间中,不少同学都已经放假了,有更多的时间用来学习编程了,从而精进的比较快,也就能够顺利通过竞赛了。
所以,每次竞赛的题目难一点还是简单一些,并不是你是否能够通过竞赛的关键因素,毕竟每个级别的难度是有标准的,再难也不会超过那个标准,只要你能够多多练习,多多思考,不断精进,总是能成功晋级的!
新的竞赛即将来临,需要历年竞赛真题及解析的同学可以扫码免费领取~