计算机等级和信息学竞赛,USACO,与USAMO竞赛同等含金量的美国信息学竞赛

本文主要是介绍计算机等级和信息学竞赛,USACO,与USAMO竞赛同等含金量的美国信息学竞赛,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

7e1d705cc6f08aefc76b62f24b6ecd1a.png

逐梦的两位同学,最近在美国计算机奥林匹克竞赛中成功晋级铂金(最高级别)。参加过美国计算机奥林匹克竞赛(USACO)的同学,应该是知道晋级铂金级别的难度,和这个奖项对将来申请顶级美本的巨大帮助作用的。

那么,什么是USACO?我们今天带大家一起来了解这个含金量超高的计算机竞赛。什么是USACO?

USA Computing Olympiad(USACO,美国计算机奥林匹克竞赛)

是美国一项为初高中生或者年龄更小的学生提供的在线竞赛,旨在锻炼学生用计算机编程解决问题的能力。

竞赛在家里通过网上进行。USACO在每年的四个周末举办他们主要的比赛,从周五到周一,在这个时间段内学生可以选择在任何时间开始比赛。通常来说每次竞赛的时间为4个小时,但有时候是3个小时或者5个小时。

USACO极为重视对算法时间效率与优化水平的考察,很多试题必须要进行非常细致的优化才能够通过。几个典型的例子如Checker Challenge, Cryptcowgraphy, Latin等。

■ ■■■■USACO含金量

随着STEM教育的理念,及编程低龄化,普及化的发展,USACO的参赛人数和热度越来越高。因为编程的门槛相比数理化学习较高,USACO难度和含金量实际会略高于同类型的USAMO(美国数学奥赛),USNCO(美国化学奥赛)等等学科奥赛。当然,USACO也是美国大学申请过程中非常非常有含金量和竞争力的一个竞赛。

因为大量的中国学生热衷于参加热门的美国数学奥赛、美国化学奥赛,所以USACO在中国的普及度并不高。这意味着参赛选手少,获奖选手也少,含金量自然更高。

对于未来美本留学申请理工科专业的高中生来说,USACO能够获得金或者白金级别的奖项,绝对是提高竞争力的大杀器。

■ ■■■■参赛对象

初高中生

适合国内高一高二在读学生有意向申请美国大学的,或者想锻炼自己编程能力的,高三学生也可以参加12月的第一场比赛,如果实力突出,可以在12月中RD常规申请前获得白银级奖项,可以说是申请前后最后一波强势的背景提升机会。

当然,编程基础较好,有算法能力的低年级生也可以尝试参赛,提前挑战USACO竞赛,证明自己的编程能力。

■ ■■■■比赛形式

在线比赛

每年的12月、1月、2月和3月都分别有USACO比赛开放日,在比赛窗口开放的三天内,选手可以选择在任意时间登陆USACO账号开始比赛。

■ ■■■■竞赛等级

1 青铜级

参赛资格:注册USACO账号即为铜级

难度等级:铜级考试相对简单,参赛学生需会至少一种程序语言,只要经过一定的训练,大部分初次参赛的选手都能在限制时间内做完题,在第一次考试中晋级白银级。

知识点:主要考察编程知识的掌握程度,排序、二分查找;

2 白银级

参赛资格:通过铜级比赛的选手

难度等级:需要基本的问题解决能力和简单的算法能力(例如:贪心算法,递归搜索算法等),除此之外,学生还要对基础数据结构有一定的了解。

知识点:涉及递归搜索、贪心算法等基本的问题求解技术;了解最基础的数据结构概念;

3 黄金级

参赛资格:通过银级比赛的选手

难度等级:需要有一定的算法基础,理解一些抽象的方法(例:最短路径,动态规划),并且学生要对数据结构有比较深的了解。

知识点:设计更复杂的标准算法(例如最短路径,动态规划等),熟练掌握数据结构;

4 白金级

参赛资格:通过黄金级比赛的选手

难度等级:需要有很高的编程基础和很强的算法能力。部分比赛问题最后的优化方案,可能不止一个,得出的答案也不止一个。

知识点:对算法有深入了解,熟练应用,能解决复杂问题、开放问题。

■ ■■■■比赛规则

2019年时间表

(18年12月第一次竞赛)

1.18 — 1.21 :第二次竞赛

2.22 — 2.25:第三次竞赛

3.28 — 4.1:US 公开赛

每场比赛4——5个小时,比赛从在线打开试题后开始计时,可以使用C++,Java,Python,Pascal和C中的任意一种语言进行做题,在时间结束前通过网络将写好的程序提交即可。

程序提交后官网会给出用test case检测程序的结果,并根据结果给出这一题的得分,每次比赛,实力强的选手可以连续升级。

开始比赛4小时内,如果拿到了高分(接近满分或者满分),系统会提示直接晋级,可以在这三天内继续挑战下一级,只要实力足够,一场考试可以提升到满级白金级。

没拿到满分的选手,需要等到三天的赛程结束后,等待晋级分数线,才能决定是否晋级,如果成功晋级,可以在一个月后的第二场继续参赛晋级。

■ ■■■■如何备考

1 没有编程基础的同学

建议从Python或者Java入手,上手较快。可以选择先自学,学习主要内容为数据结构,编程语法,配合一定强度的练习和老师讲解,可以初步通过第一轮铜级的选拔。

2 有编程基础的同学

比如在读AP计算机的高一高二同学,或者在必果学习过Python的同学,可以从C/C++或者Python入手,学习算法知识,加强算法练习和真题训练。

3 有相关参赛经验的同学

比如参加过国内NOIP的同学,可以目标是直接是冲击至少金级别及以上的奖项,在有数据结构和编程语法基础的前提下,需要系统的学习一些常见算法,比如排序等等。同时大量练习官方的金、白金级别的真题。

■ ■■■■

176fb2f4f78622e721d28f93f3f5e8fb.png

End

热门文章:

前腾讯副总裁为女儿访遍英美名校,发现最顶尖的教育只教一件事

华裔学生获6所藤校和斯坦福MIT录取,其父分享教育经验

2019年夏校申请的9个细节及3条建议,附顶尖夏校申请地址

哈佛何以一流?(强烈推荐)

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com

这篇关于计算机等级和信息学竞赛,USACO,与USAMO竞赛同等含金量的美国信息学竞赛的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/178461

相关文章

usaco 1.3 Prime Cryptarithm(简单哈希表暴搜剪枝)

思路: 1. 用一个 hash[ ] 数组存放输入的数字,令 hash[ tmp ]=1 。 2. 一个自定义函数 check( ) ,检查各位是否为输入的数字。 3. 暴搜。第一行数从 100到999,第二行数从 10到99。 4. 剪枝。 代码: /*ID: who jayLANG: C++TASK: crypt1*/#include<stdio.h>bool h

usaco 1.3 Calf Flac(暴搜)

思路是暴搜。 需要注意的地方是输入的方法,以及输出时的换行。 代码: /*ID: who jayLANG: C++TASK: calfflac*/#include<stdio.h>#include<string.h>#include<math.h>int main(){freopen("calfflac.in","r",stdin);freopen("calfflac.ou

usaco 1.3 Barn Repair(贪心)

思路:用上M块木板时有 M-1 个间隙。目标是让总间隙最大。将相邻两个有牛的牛棚之间间隔的牛棚数排序,选取最大的M-1个作为间隙,其余地方用木板盖住。 做法: 1.若,板(M) 的数目大于或等于 牛棚中有牛的数目(C),则 目测 给每个牛牛发一个板就为最小的需求~ 2.否则,先对 牛牛们的门牌号排序,然后 用一个数组 blank[ ] 记录两门牌号之间的距离,然后 用数组 an

usaco 1.3 Mixing Milk (结构体排序 qsort) and hdu 2020(sort)

到了这题学会了结构体排序 于是回去修改了 1.2 milking cows 的算法~ 结构体排序核心: 1.结构体定义 struct Milk{int price;int milks;}milk[5000]; 2.自定义的比较函数,若返回值为正,qsort 函数判定a>b ;为负,a<b;为0,a==b; int milkcmp(const void *va,c

usaco 1.2 Palindromic Squares(进制转化)

考察进制转化 注意一些细节就可以了 直接上代码: /*ID: who jayLANG: C++TASK: palsquare*/#include<stdio.h>int x[20],xlen,y[20],ylen,B;void change(int n){int m;m=n;xlen=0;while(m){x[++xlen]=m%B;m/=B;}m=n*n;ylen=0;whi

usaco 1.2 Name That Number(数字字母转化)

巧妙的利用code[b[0]-'A'] 将字符ABC...Z转换为数字 需要注意的是重新开一个数组 c [ ] 存储字符串 应人为的在末尾附上 ‘ \ 0 ’ 详见代码: /*ID: who jayLANG: C++TASK: namenum*/#include<stdio.h>#include<string.h>int main(){FILE *fin = fopen (

usaco 1.2 Milking Cows(类hash表)

第一种思路被卡了时间 到第二种思路的时候就觉得第一种思路太坑爹了 代码又长又臭还超时!! 第一种思路:我不知道为什么最后一组数据会被卡 超时超了0.2s左右 大概想法是 快排加一个遍历 先将开始时间按升序排好 然后开始遍历比较 1 若 下一个开始beg[i] 小于 tem_end 则说明本组数据与上组数据是在连续的一个区间 取max( ed[i],tem_end ) 2 反之 这个

usaco 1.2 Transformations(模拟)

我的做法就是一个一个情况枚举出来 注意计算公式: ( 变换后的矩阵记为C) 顺时针旋转90°:C[i] [j]=A[n-j-1] [i] (旋转180°和270° 可以多转几个九十度来推) 对称:C[i] [n-j-1]=A[i] [j] 代码有点长 。。。 /*ID: who jayLANG: C++TASK: transform*/#include<

usaco 1.1 Broken Necklace(DP)

直接上代码 接触的第一道dp ps.大概的思路就是 先从左往右用一个数组在每个点记下蓝或黑的个数 再从右到左算一遍 最后取出最大的即可 核心语句在于: 如果 str[i] = 'r'  ,   rl[i]=rl[i-1]+1, bl[i]=0 如果 str[i] = 'b' ,  bl[i]=bl[i-1]+1, rl[i]=0 如果 str[i] = 'w',  bl[i]=b

软考系统规划与管理师考试证书含金量高吗?

2024年软考系统规划与管理师考试报名时间节点: 报名时间:2024年上半年软考将于3月中旬陆续开始报名 考试时间:上半年5月25日到28日,下半年11月9日到12日 分数线:所有科目成绩均须达到45分以上(包括45分)方可通过考试 成绩查询:可在“中国计算机技术职业资格网”上查询软考成绩 出成绩时间:预计在11月左右 证书领取时间:一般在考试成绩公布后3~4个月,各地领取时间有所不同