不同编程水平的选手该如何备赛USACO(美国计算机奥林匹克竞赛)。想要参加考试如何报名?USACO竞赛难度大么?想要冲刺金奖 铂金级如何准备?USACO不仅仅是一项可以让申请者迅速提高学术背景的比赛,编程本身作为一门使用技能也会让学理工科的学生受益终生,即便是商科文科的同学,编程训练本身带来的思维优势也可以极大的促进学习。
下面机构老师从没基础、有部分基础、以及有一定基础或者参加过国内NOI的几类同学分享,该如何备赛:
对于没有编程基础的选手:
建议从python或者java入手,上手较快。学习主要内容为数据结构,编程语法,配合一定强度的练习,可以初步通过第一轮铜级的选拔。
对于有部分编程基础的选手:
比如在读AP计算机的高一高二同学:可以从C++或者C入手,作为编程语言中最强大最基础的两门,无论是应付比赛还是在以后读本科或者工作中使用,提前学习C++和C都是不错的选择。
对于有编程基础及编程经验的选手:
比如参加过国内NOI的同学:可疑目标直接是冲击至少金级别以上的奖项,在有数据结构和编程语法的前提下,需要系统的学习一些常见算法,比如排序等等。同时大量练习官方的金,白金级别的真题
USACO(美国计算机奥林匹克竞赛)比赛规则:
USACO每场比赛4-5个小时。可以在比赛规定时间开始后登陆USACO账号,从网上学习打开试题后开始计时。选手需要在时间结束前通过网络将写好的程序提交。程序提交后官网会给出用test case检测程序的结果,并根据结果给出这一题的得分。
可以使用C++,Java,Python,Pascal,和C中的任意一种编程。比赛对于程序的大小,运行需要的内存以及运行的时间都有一些具体规定。每次比赛,实力强的选手可以连续升级。
在比赛窗口开放的三天时间内,选手可以选择任意时间开始比赛。开始比赛4小时内,如果拿到了高分(接近满分或满分),系统会提示直接晋级,可以在这三天内继续挑战下一级,只要实力足够,一场考试可以升到满级白金级。
没能拿到满分的选手需要等到三天的赛程结束后,等待晋级分数线,才能决定是否晋级,如果成功晋级,可以在一个月后的第二场继续参赛晋级。
USACO参赛流程
注册USACO账号即为青铜级,青铜级考试相对简单,参赛学⽣需会⾄少⼀种程序语⾔,只要经过⼀定的训练,大部分初次参赛的选⼿都能在限制时间内做完题,在第⼀次考试中晋级⽩银级。那么接下来,就介绍一下具体的注册流程。
一、在这里,点击“Register for New Account”按钮(图为注册入口)
二、填写账户信息
三、按照要求,填写好个人信息,而后提交。
注册好之后来到Contests竞赛页面。(下图为翻译后的竞赛页面)
重点!!提交要求
提交注意事项:必须按要求对源文件进行注释,不得有误:ID填写自己的用户名,PROG根据题目要求填写,LANG根据使用的语言填写。如果不按照要求填写,提交后将没有成绩。编写好后,将编写好的cpp源文件提交。
以下以输入文件名为test.in
输出文件名为test.out为例
程序提交要求如下:
提交后可以看到我们的提交结果,如果注释出现错误,将不会使用测试数据对代码进行检测。
USACO官网:http://usaco.org