考试地点:线上比赛
参赛形式:个人参赛,通过登录USACO官网,在线提交代码的形式
比赛规则:在比赛规定的时间范围内(通常是4天,期间覆盖一个周末)在线打开题目,在线提交代码。比赛时长5个小时,从打开题目算起,选手需要完成3道题目。
代码提交后,系统会自动给出评分,如果拿到了高分(接近满分),系统会提示直接晋级,则可在本次月赛中继续挑战更高难度的试题。一般情况下,月赛考试结束后,会划出晋级分数线。如果成功晋级,可在下个月的比赛中参加更高级别的竞赛。
奖项与证书:
3道题目,如果过关,可晋级到更高级别。
青铜级
参赛资格:注册USACO账号即为铜级
难度等级:铜级考试相对简单,参赛学生需会至少一种程序语言,只要经过一定的训练,大部分初次参赛的选手都能在限制时间内做完题,在第一次考试中晋级白银级。
知识点:主要考察编程知识的掌握程度,排序、二分查找;
白银级
参赛资格:通过铜级比赛的选手
难度等级:需要基本的问题解决能力和简单的算法能力(例如:贪心算法,递归搜索算法等),除此之外,学生还要对基础数据结构有一定的了解。
知识点:涉及递归搜索、贪心算法等基本的问题求解技术;了解最基础的数据结构概念;
黄金级
参赛资格:通过银级比赛的选手
难度等级:需要有一定的算法基础,理解一些抽象的方法(例:最短路径,动态规划),并且学生要对数据结构有比较深的了解。
知识点:设计更复杂的标准算法(例如最短路径,动态规划等),熟练掌握数据结构;
白金级
参赛资格:通过黄金级比赛的选手
难度等级:需要有很高的编程基础和很强的算法能力。部分比赛问题最后的优化方案,可能不止一个,得出的答案也不止一个。
知识点:对算法有深入了解,熟练应用,能解决复杂问题、开放问题。
适用对象:
7-12年级
Python,Java,C++三选一编程基础
Python/Java/C++编程基础或语法基础测试80分或者以上,了解面向对象编程