• Contact Us Today!

    (925) 218-1816 or (510) 676-0415 | info@shengmengedu.com | 11840 Dublin Blvd, Dublin, CA 94568

  • (1) 什么是USACO美国计算机奥林匹克竞赛?

    美国计算机奥林匹克竞赛USA Computing Olympiad (USACO, http//www.usaco.org)是一项面向全世界初中和高中生的个人计算机编程竞赛,来自70多个国家的学生参加这一比赛。USACO主要测试学生抽象思维能力和解决复杂编程问题的能力。

    (2) USACO竞赛在什么时候举行?

    USACO每个赛季有四次竞级赛,分别在12、1、2和3-4月份,一次比赛的时间限定为4小时,在指定的竞赛日期范围内(通常是一个周末从星期五至星期一的4天),竞赛选手可以灵活选择比赛开始时间,并在规定的4小时内和在四天截止日期结束前完成比赛并提交答案。在美国的西海岸(例如旧金山),确切的竞赛时间是星期五4AM至星期二4AM。这是2020-2021 的竞赛日期:

    Dec 18-21: First Contest
    Jan 22-25: Second Contest
    Feb 26-Mar 1: Third Contest
    Apr 2-5: US Open
    TBD (Late May): Training Camp
    Jun 20-27: IOI 2021 in Singapore

    (3) USACO竞赛在什么地方举行?

    学生在自己家里,在自己的计算机上解题编程。尽管比赛是开卷的,可以翻书和在网上搜索基本概念和使用方法,但是禁止作弊, 禁止与任何人商量,提交的程序必须是自己独立完成的!在竞赛结束前,禁止上传你的答案到网上。

    (4) 如何报名参加USACO竞赛?

    参加USACO竞赛不需要报名,也没有报名费。学生只需在比赛之前任何一天或任何时候在USACO.org 网站上花几分钟时间注册一个免费帐号即可参赛。到了比赛日期,学生只要登陆自己的USACO帐号即可开始竞赛。

    (5) 学生使用什么计算机编程语言参加USACO竞赛?

    学生可以从下列五种计算机编程语言中任选一种或几种语言参赛:C, C++, Java, Python and Pascal,USACO最流行的语言主要是C++,Java和Python三种语言,C和Pascal很少有人用。一次USACO竞赛通常有三道题,三道题可以用同一种语言,也可以用三种不同的语言解题,但是每道题只能用一种编程语言。有的题可能用Python最容易解答,而有的题可能必须用C++才能实现最短的运行时间和使用最少的计算机内存,否则即使答案是对的,也不能得分。

    (6) 为了参加USACO竞赛应该学哪种编程语言?

    建议五-六年级的学生学简单易学的Python,Python还是最容易通过USACO Bronze 的语言。八年级以上的学生建议学Java,因为Java是高中AP Computer Science A 的指定编程语言,学Java可以事半功倍,一箭双雕。尽管使用C++可以一劳永逸从USACO Bronze(铜级)一直晋级到白金级(Platinum),但是在晋级到USACO Gold (考过Silver)之前,没有必要学习C++。

    (7) 学生在竞赛时如何才能得分?

    USACO 竞赛时,学生提交计算机程序后,USACO网站会即时改卷,得分多少取决于(1)你的程序在十几个test cases 里面能有多少正确答案?(2)你的程序运行多长时间?(3)你的程序占用多少计算机内存?C++的程序由于运行快,占用内存容易优化,在高级别的USACO Gold and Platinum Divisions 的竞赛中有得天独厚的优势。