犀牛国际教育旗下指定官方网站~

课程咨询热线 400-656-1680

刷USACO Training的题目,能顺利通过考试吗?

发布时间:2022-12-18 22:59:41

编辑:范范来源:犀牛国际教育中心浏览:

前两天一位家长找到我,说他的孩子之前学习过一点算法,最近通过USACO Training在刷题,想问我通过这样的刷题,是否能够通过USACO竞赛?

于是,我给他出了几道基础的铜牌组的题目,通过这些题目测试下他的水平。谁知道不到半个小时,家长就把这几道题目的答案全部发给我了,检查下来,竟然全部都正确。我立刻和这位家长交流,想了解下这位学生是如何刷题的,为何效果会这么好?家长也很热心的拉了一个群,学生在群里介绍了他平时刷题的方法,这套方法也是他在一位算法专家的博客上看到,并记录下来的。

先分析题目,再写代码,代码编写的时间不超过50%

USACO 的竞赛题,重点并不是编码,它主要还是考察学生应用算法思考问题的能力,所以在真正编码以前,需要把问题分析清楚,如果把问题思考清楚了,编码的时间是不会太长的,一般把编码的时间控制在一道题目总完成时间的50% 。

冥思苦想很多天,再去查看别人的题解

刷题的过程中,总会碰到很多题目是自己暂时不那么容易做出来的,这类题目恰恰是最适合你的,碰到这种题目,可以认真思考一下,当你全部吸收和理解了这种题目后,你的能力就提升了。但大部分学生碰到这种题目,习惯性的就会去看一下题解,然后就自以为懂了,但这种“懂”往往是假象。只有真的认真思考过,把自己能够想到的所有路径都尝试过,这个时候再去看题解,你才更容易收获一种新思路。

重点学习算法原理,尝试一题多解 和举一反三

记得之前和国内信息学名校(南京外国语)的计算机老师交流过,我问他们学校为何能够培养出那么多代表国家参加世界竞赛的选手,他总结说,也许他们学校更重视培养学生的一题多解能力。算法本来就是在训练思维的,常常从不同角度来解答一道题目,会更加拓宽学生的思维方式,碰到真正的难题时,学生更有可能从多个维度进行思考解答,从而最终给出答案。

注重刷题的质量,数量不是第一位的

刷题的核心是重质不重量,刷题中最适合你的,其实是那些比你当前的水平高一点的题目,这就是所谓的 “i+1” 理论,通过认真做对这些题目,能力就能稳步提升。所以题目的质量很重要,题目是否适合你当前的水平,这也是一个很重要的考量因素。

这位学生当时选择USACO Training,就是因为这套题目是按照从易到难的顺序介绍了USACO 的知识点,并通过题目的形式,让学生在实际动手中掌握这些知识点。不过,在刷题的过程中,他也碰到了一些问题,所以才希望寻找老师的帮助:

USACO Training中虽然也有知识点介绍,但介绍的并不详细

USACO Training 中每一章的开头都有本章知识点的文本介绍,但这些介绍并不够全面,如果想进一步深入这些知识点,可以考虑通过网上资源和书本资源,搜集更多相关资料信息进行学习查看。

Training中的题目没有正确提交前,是无法看到答案的,有些题目实在不会做,就会一直这么卡着无法过去,这时候会比较郁闷

USACO Training的训练模式,就是希望能够通过做题来达到知识点的掌握,所以在题目正式解答出来以前,是看不到题解信息的,如果经过了几天的思考,学生实在是无法解答当前题目,可以在百度上搜索题目信息,一般都能找到对应的解答方法。

题目并不完全按照USACO等级设定,针对于每一种算法的题目数量也不够

USACO Training 中的算法是按照从易到难的顺序进行排序的,其顺序基本上符合各级别竞赛对算法的要求,但也不是完全对应的,对于直接刷Training 算法的学生,往往并不了解针对自己的级别应该刷到哪里合适。另外,针对每种算法,Training 中的题目数量也不够,学生可能无法仅仅通过几道题目就彻底掌握算法。

所以总的来说,对于自学能力强的学生,刷USACO Training 是一个比较好的学习方式,碰到不会的知识点的时候,配合找一些对应的知识点视频进行学习,并且辅助以更多的一些练习题目。如果平时时间比较少,希望能够更高效的进行学习,还是找一位老师辅导会更好,在老师讲解的情况下,再配合刷题练习,进步一定是非常可观的。

最后,给大家介绍一下USACO Training的网址,注册后即可开始做题:

https://train.usaco.org

相关标签:
TOP