2023年USACO第二场月赛考试结束,目前成绩已出。
学员案例分享
USACO竞赛可以极大地提升学生的编程水平,且学生真实完整的编程学习经历也是打动名校面试官的关键因素。USACO的价值不光体现在竞赛成绩上,也体现在备赛过程中。许多经历了USACO竞赛的学生会拥有意想不到的收获。我们采访了一位USACO学员,在这里和大家分享他的竞赛经历?
Q、何同学,你是文科生,那为什么会想到学编程呢?
何同学:
高中时我是文科生,我的成绩是有些“偏科”的,所以顾问老师在向我推荐学习计算机编程时,我内心是拒绝的
但顾问老师告诉我,“扬长避短”是留给申请季前夕的学生的,而当时我处在申请早期阶段,应该给自己更全面的挑战和机会。而且根据以往学员的经历,即使是非理工科专业,在工作中也会用到计算机编程。学习些计算机编程是百利而无一害的。
偏科并不等于是所偏科目的天才,其实往往意味着在弱势学科的懒散不作为,而规划的核心出发点就应该是给孩子提供充分的机会。
Q:能和我们分享一下你的学习经历吗?
何同学:
我是9年级开始学习计算机编程的,在学习中,我逐渐建立起对计算机学科的兴趣,并在同年参加USACO比赛,顺利晋级银组。
10年级的时候学习了高等数学和机器学习的模型,探索了我的第一个人工智能课题(金融领域中机器学习的应用),同时成功冲击到USACO的黄金组。如果我早一点学习编程,没准现在已经晋级铂金组了。
11年级的暑假我获得了丘成桐科学奖计算机组的铜奖,并被MIT PRIMES计算机科研营录取。
Q:你觉得最终你为什么能被斯坦福录取?
何同学:
我在编程学习的过程中也没有放弃对于人文、体育等方面的探索,最后在临近申请时才发现,USACO的奖项以及AI相关的研究已经成为了我的学术亮点。所以我觉得这些奖项和荣誉只是努力成长的附属品,而这段完整真实、充满挑战的计算机学习经历才是帮助我进入名校的关键。
USACO 2月铜组比赛考情分析
Problem 1. Hungry Cow
第一道题目大部分学生看完后都是有思路的,但是真正在做的时候,很可能只能通过7个点的数据。注意题目,我们要使用long long作为我们的数据类型,在开数组空间的时候取n的区间即可,其余部分参考题解。
Problem 2. Stamp Grid
USACO第二道题目是一道典型的暴力枚举算法。这一道题的枚举方式也不是特别清晰令人一目了然,我们需要对印章进行处理保存,然后与相应的结构进行比对,如果全部满足即可,不满足要继续选择另一种方式枚举。
Problem 3. Watching Mooloo
USACO第三道题目比较简单,可以算是一道模拟算法的题目,在这里同学们只需要明白续订之间天数超过k不如重新订阅,不超过k选择连续订阅即可,是一道送分题。
Conclusion
从这次的竞赛题目来看,USACO铜组难度普遍不高,题目重点还是考察学生的分析和代码能力;
- 分析能力主要体现在根据题目能够快速定位到算法,然后通过算法框架对题目进行步骤分解。
- 代码能力则表现在能够根据逻辑,使用代码完美地表达出来。