近几年,STEM教育的理念及编程低龄化,普及化的发展迅猛, USACO竞赛 的参赛人数和热度越来越高。对于未来美本留学申请理工科专业的高中生来说,USACO能够获得金或者白金级别的奖项,绝对是提高竞争力的大杀器。
当然,USACO也是美国大学申请过程中非常非常有含金量和竞争力的一个竞赛。因为大量的中国学生热衷于参加热门的美国数学奥赛、美国化学奥赛,所以USACO在中国的普及度并不高。如果你参加并且获奖了,能为你的简历加分不少,在中国申请者中脱颖而出。
![图片](/e/admin-houtai/mpimgs/1716889618_1716889707_2915.png)
USACO(美国信息学奥林匹克竞赛)初次举办于1992年,其官网是美国一个著名在线题库,更是美国中学生的官方竞赛网站,开设目的是为每年夏季举办的国际信息学奥林匹克竞赛(IOI)选拔美国队队员。每年十二月到次年三月,每月一场,共四场。
USACO每场比赛4个小时。可以在比赛规定时间开始后登陆USACO账号,从在线打开试题后开始计时。选手需要在时间结束前通过网络将写好的程序提交。程序提交后官网会给出用test case检测程序的结果,并根据结果给出这一题的得分。可以使用C++,Java,Python,Pascal,和C中的任意一种编程。比赛对于程序的大小,运行需要的内存以及运行的时间都有一些具体规定。
每次比赛,实力强的选手可以连续升级。在比赛窗口开放的三天时间内,选手可以选择任意时间开始比赛。开始比赛4小时内,如果拿到了高分(接近满分或满分),系统会提示直接晋级,可以在这三天内继续挑战下一级,只要实力足够,一场考试可以升到满级白金级。
没能拿到满分的选手需要等到三天的赛程结束后,等待晋级分数线,才能决定是否晋级,如果成功晋级,可以在一个月后的第二场继续参赛晋级。
USACO竞赛分为四个组别,分为青铜、白银、黄金、铂金,选手必须依次通过直至最高级铂金,不可跳级,但是实力足够,可以连续晋级。
青铜级:
参赛资格:一进入USACO注册账号即为铜级。
难度等级:铜级考试只要基本编程常识,会至少一种编程语言。铜级的编程限制时间还是够用的,大部分初次参赛的选手都能在第一次考试中晋级白银级。
白银级:
参赛资格:通过青铜级比赛的选手。
难度等级:需要基本的问题解决能力和简单算法(例如:贪心算法,递归搜索等),还需了解基础数据结构。从白银级开始,选手需要寻找更好的算法才能使程序在规定时间内跑完。
黄金级:
参赛资格:通过白银级比赛的选手。
难度等级:需要有一定的算法基础,理解一些抽象的方法(例:最短路径,动态规划),并且对数据结构有比较深的了解。
白金级:
参赛资格:通过黄金级比赛的选手。
难度等级:需要有很高的编程基础,对算法有深入的了解。部分比赛问题最后的优化方案,可能不只一个,得出的答案也不只一个。
![图片](/e/admin-houtai/mpimgs/1716889618_1716889707_8675.png)
1.刷题练习
USACO的训练场和比赛都堪称信息学奥赛的经典。国内不少命题也会参考 USACO竞赛 的历史原题,有志于在国内信息学奥赛中争金夺银的选手们想刷题时,强烈推荐USACO!
2.赛事经验
国内信息学奥赛,每年一次,很多选手没有足够的赛事经验,在赛场上不能完美发挥自己的能力,一旦错失机会,就要再等下一年;但是USACO每年有4场,如果实力足够,每场都可以从青铜直接打到白金,且其题目难度及质量比国内信奥完全不逞多让。对于想要增加信息学赛事经验的选手来说,非常强烈推荐USACO!
3.出国履历
打开USACO的官网,第一眼便是IOI 2023国际信息学奥赛以及EGOI 2023欧洲女子信息学奥赛的美国队成员公示信息,华人面孔占据了很大的比例。
![图片](/e/admin-houtai/mpimgs/1716889618_1716889707_7951.png)
USACO竞赛备受美国名校关注,被哈佛、耶鲁、麻省理工、康奈尔、普林斯顿、卡内基梅隆等理工牛校认可。每年吸引着众多申请美国顶尖大学计算机专业的学生。
对于计划留学美国的选手,USACO是非常有含金量的履历加分项,对于这部分同学,更是推荐USACO!
Bronze(铜级):适合于刚学会编程的学生,考察的算法主要有:穷举算法(Complete Search)、模拟算法(Simulation)、贪心算法(Greedy algorithm)、全排列(Permutation)、杂类题目(Ad-hoc)、递归(Recursion);
Silver(银级):面向开始学习基本问题解决算法,考察的算法主要有:排序(Sorting)、二分查找(Binary Search)、递归搜索(Recursion)、图的遍历(DFS&BFS)、FLoodfill算法、前缀和(Prefix Sum)、扫描线算法(Line Sweep);
Gold(金级):需要有一定的算法基础,理解一些抽象的方法(例如:最短路径、动态规划),并对数据结构有比较深刻的了解。考察的主要有:堆、栈、树、链表等高级数据结构,动态规划等高级算法,算法时间和空间复杂度;
Platinum(白金级):需要有很高的编程基础,对算法有深入的了解。部分试题最后的优化方案,可能不止一个,得出的答案也不止一个。考察的主要有:各类高级的数据结构,尤其是需要算法的时间和空间复杂度。
![图片](/e/admin-houtai/mpimgs/1716889618_1716889707_6422.png)
建议从Python或者Java入手,上手较快。可以选择先自学,学习主要内容为数据结构,编程语法,配合一定强度的练习和老师讲解,可以初步通过第一轮铜级的选拔。
在读AP计算机的高一高二同学,或者学习过Python的同学,可以从C/C++或者Python入手,学习算法知识,加强算法练习和真题训练。
在有数据结构和编程语法基础的前提下,需要系统的学习一些常见算法,比如排序等等。同时大量练习官方的金、白金级别的真题。
![图片](/e/admin-houtai/mpimgs/1716889618_1716889708_1931.png)
USACO官网:https://www.usaco.org/
需要初步认知这个竞赛,建议首先在USACO官网上回顾过去的比赛,该网站提供了一系列竞赛材料。这种比赛风格通常被称为“online judge”系统,你可以通过在线搜索找到许多例子。USACO官方还提供其他链接和资源的列表。
USACO课程开设多种班型,涵盖基础班、提高班和冲刺班及全程班!
▶USACO铜升银:适合刚入门计算竞赛,编程语言基础较弱的同学。
▶USACO银升金:至少会一门计算机编程语言(比如C++),有一定算法基础,想要备考升级的同学。
▶USACO银升金:适合有较好编程语言基础和算法基础的同学,需要专业老师的指导,目标是下一奖项的同学。
我们的课程紧密结合USACO竞赛的需求,以USACOguide指导网站上的考点为基准,由经验丰富的专业教师团队精心设计和开发,助力同学冲刺拿奖!
▶课表
![图片](http://x-new.cn/e/admin-houtai/mpimgs/1716886448_1716886509_7603.png)
✅USACO铜升银班:
计算机编程刚入门,语言基础薄弱,无比赛经验计划申请计算机专业中学生。
✅USACO银升金班:
至少会一门计算机编程语言(推荐C++),算法基础较一般,有一定比赛经验。
✅USACO金升铂金班:
有完善的计算机编程语言基础,有入门算法经验,一定比赛经验,如NOIP,USACO银组晋级。
我们的课程体系:测试 - 讲解 - 练习 - 考察 - 答疑反馈,完整流程,认真对待每一个学生,合理规划学生学习进度,针对性辅导。
![图片](http://x-new.cn/e/admin-houtai/mpimgs/1715852009_1715852085_3040.png)
开设有精品小班、一对一等多种班型,家长和同学们可任意选择,线下+线上同步授课,在上海、北京、南京、苏州、无锡、杭州、广州、深圳、青岛、合肥、武汉、济南、成都等地均设有线下校区,注:各校区班型不同,具体扫描二维码咨询!
|