通过
USACO
,可以证明你对编程和算法的热忱与能力,如果能在
USACO
竞赛中获奖,对于美本申请理工学科的学生来说,尤其是计算机专业方向的学生,这无疑是美国本科申请中背景提升的一大杀手锏。
USACO
四个赛段的难度所展示的计算机能力足以吸引大学招生官。
USACO
,全称为
United States of America Computing Olympiad
(美国计算机奥林匹克竞赛)是针对全球高中生的计算机编程在线竞赛。
USACO
根据难度分为四个赛段:青铜、银、金和白金,分别于每年
12
月、
1
月、
2
月举办。参赛者可以在每次比赛开始后,登录考试官网下载问题并在线提交解决方案。每个问题都需要编写一个程序来计算出一系列测试用例的正确答案。参赛者的成绩需要高于或等于入围成绩才能进入下一等级的比赛,以此不断升级。
根据最近几年的中国学生参赛数据,以及
2020
年给出了官方中文题,可想而知在未来会有越来越多的学生。
02
比赛要求
参赛者可以在比赛窗口开放的任意时间段内参与,时长为连续
3-4
个小时,
可以在
C, C++, Java, Pascal, Python
中任选一种作为参赛编程语言。
USACO
是一次
“
算法
”
竞赛,这意味着它需要提出创造性的、系统的方法来分析信息,而不仅仅是将程序的描述直接转换为代码。最终根据程序在允许的时间及内存范围内,正确计算的测试用例的数量来计算得出比赛分数。
整个比赛需要灵巧的算法与数据结构,才能正确地在时限内解决所有测试用例。这对参赛者的要求并不低。
此级别通常可以使用数组或使用
ArrayLists
及其他基本编程常识即可解决。此赛段的主要任务是适应
USACO
问题的复杂性以及熟悉解决问题的格式,只要求会至少一种算法语言。
在解决问题和简单算法(算法、资料结构等)的基础上,还要确保我们的程序在每个测试用例的时间和内存范围内运行。代码效率是
USACO
的关键得分因素。因此,第二阶段的时间和内存复杂性分析更为重要。

第三、四阶段需要运用到抽象的方法(最短路径、动态规划等)自行对编程数据结构。该阶段中,解决问题的办法不止一个,要选择最优的方式。
这两个赛段是
USACO
中最难的,能够通过
USACO
黄金级认证的学生通常都具有计算机科学算法的高级本科水平。


USACO具有一定的难度门槛,有些编程题跟谷歌,facebook等顶.级科技公司面试题类似, 在USACO竞赛中取得的好成绩对以后实习申请也有很大帮助。
01竞赛介绍
03比赛内容
1)级别:铜

2)级别:银

3) 级别:金,白金


微信扫一扫









