2022-2023赛季的USACO基本结束,3月的OPEN月赛为了选拔美国信息学奥赛选手,奇思孵化不建议学生参与,难度大晋级率低。
总体而言,2022-2023赛季全球参赛人数再创历史新高,中国学生参赛人数增加不多。美国作为主要参赛选手来源地,占据参赛总人数的依旧半壁江山,中国学生才是人数紧随其后。相对其他国家中学生编程竞赛来说,USACO在全球具有比较广泛的参与度,其中USACO部分的数据包含各国在美国留学的学生人数。
由于比赛本身的门槛较高,参赛人员主要集中于中美两国学生。
(点击查看大图,图片来源:奇思孵化)
我们再来看看每月月赛数据情况,2022-2023赛季首场比赛参赛人数达到14719人,和2021-2022赛季相比,参赛人数涨幅不大!再来对比国内参加USACO的人数,今年只增加了1000余人,而每场人数比赛比2020-2021赛季人数基本超过50%+。
通过三年数据的对比,意味着国内参与USACO人数逐渐放缓,但USACO考试成绩有藤校敲门砖之称,对名校申请有重要助力,且近年来家长和孩子们愈加意识到编程和算法能力的重要性。
(点击查看大图,图片来源:奇思孵化)
同时,对比2022-2023赛季和2021-2022赛季赛季的题目难度,奇思孵化发现今年的铜级晋级月赛晋级分数略有提升,相比于去年难度继续有所拉升,这和每年增加的考试人数有一定关系,尤其是中国学生参赛人数的暴涨。其实,在USACO 2021-2022赛季中,各个级别难度已经拉升一波。在考试难度持续增加的在这种情况下,长期的解决方案就是提升自己的水平,学更高级别的知识点;短期的话就是提升自己考试经验的发挥,增强临场应变能力。
(点击查看大图,图片来源:奇思孵化)
USACO难度的提升,尤其是低级别把难度提升之后,会打击到刚刚学习算法学生的积极性。USACO官方为了降低晋级人数,且不能大幅度提升难度的情况下,今年做出了一个重要决定——取消中文版本!
在2022-2023赛季的前三场月赛中,第一场比赛有官方中文翻译,但是到了第二场就取消了中文翻译,第三场也就是2月的月赛继续取消。连续两个月出现相同情况或许以后也不再提供中文版本,具体的还要再观察一个赛季。其实,早期USACO竞赛到08年才有中文版本的,在2023年又把中文版本取消了,可能与中国学生参赛人数不断增加有所关系。对于想继续参加USACO竞赛的中国学生来说,可以提早做好准备,提升英语阅读能力,从而更好地参与竞赛!
一般学科类竞赛每个级别通常都是赛季初参赛人数多,晋级率也是最高的,所以想要参加2023-2024 USACO赛季的同学们,一定要在接下来9个月的时间中尽早进行规划!有效地利用时间,提升英语阅读能力,进一步掌握算法,在新赛季中获得好成绩。
2023-2024 USACO备考建议
一直以来,USACO以计算机最重要的算法和数据结构为考核点,鼓励更多的学生在初高中阶段培养算法思维,提升计算机应用能力。
❖ 算法分析能力:也就是拿到一道题目后,能够对题目信息的一步步分析,根据题目条件确定使用什么样的算法进行求解,并能够充分灵活应用算法,把整个解题过程梳理成步骤。
❖代码编写能力:应用算法分析能力对问题进行梳理后,然后把这些步骤转换成代码,通过计算机进行求解,即把算法逻辑转换成代码。
USACO最终目的和编程在现实中的目的是一致的,那就是用计算机知识解决我们实际生活中的问题。找到问题、分析问题、把握规律的能力才是我们在USACO中需要训练的核心能力。学会从问题出发,才能够真正不变应万变,用有限的方法和代码知识去应对千奇百怪的题目。
由于USACO竞赛对计算机编程方面的综合实力要求比较高,所以参赛选手在备赛过程中不仅要熟悉、掌握基础的算法知识,还需要配合刷真题的训练。在刷题的过程中自我总结,对算法的应用方式和自己的薄弱知识点有一定的理解后,再来总结相关知识点,这样有助于提升整体的算法能力。
❖ 对应级别算法的学习
每个USACO 级别所要求掌握的算法是不一样的,对于学生来说,首先就是要学习掌握新级别的算法。USACO 各个级别的算法在官网上并没有明确的标注出来,需要根据历年的真题进行归纳总结,当然也有一些网站已经做了归纳,学生有兴趣也可以查询一下。
一般来说,对于参加初级竞赛(金组以下)的学生来说,对于编程和算法还缺少一定的理解,在这方面的自学能力也相对较弱,可以考虑找一位有经验的老师或机构进行算法的学习,这样可能确保学习效率和质量,能够节省学生的时间。
❖ 刷历年的USACO 真题
学完算法并不意味着结束,相反,这才是真正的开始。很多学生学习过一遍算法后,仅仅停留在理解的层面上,但是很难灵活进行应用。例如银组中图的深度优先搜索遍历算法,学生理解了这个算法后,可能能够根据一幅图写出这个算法,但竞赛并不会考核对于深度优先搜索遍历算法是否能够默写出来,而是会给出不同的应用背景,希望你能够把这个问题与算法对应起来,希望你能够灵活的应用算法解决问题。这才是USACO竞赛所希望考核的能力。
❖ 查漏补缺
根据刷题的情况,总结下自己哪些方面的算法还有问题,从而进一步到网上查找这些算法资料,针对性进行理解和训练。此处给大家提供一个思路,学生在刷题的时候,针对不能独立完成的题目,可以做一个记录,主要记录项包括题目对应的知识点和无法完成的原因,原因可以分成三种情况,第一,题目没有很好的理解。第二,对题目分析不足,不能确定题目使用什么算法。第三,算法思路有了,但是无法独立编码。有了上面这些记录后,你就可以很容易的统计出哪些知识点掌握的不好,同时对自己的审题能力,问题分析能力和代码编写能力也有了一个基本的认知,这样就能针对性的进行训练了。
任何竞赛,准备越早备赛周期越长,可以参赛的赛季机会越多,获奖的概率也越高。USACO的备赛,如之前没有编程基础,可以先试试水,争取拿个白银以上等级;如在初中时有参加过国内编程大赛且有不错成绩的,可以冲刺下白银、黄金以上的等级。即使没冲到黄金以上,只要拉长备赛的周期,今年12月月赛的机会就很大了。