Gifted Issues Discussion homepage
Posted By: Bostonian USA Computing Olympiad - 11/04/14 08:27 PM
I got an email about the upcoming USA Computing Olympiad, which I will pass on to my 11yo son.

Quote
Welcome to the 2014-2015 season of the USA Computing Olympiad!

As in past years, the USACO is planning several on-line programming contests this season (we will be running four contests instead of the usual six in order to give our staff time for upgrades in our infrastructure and training systems). The schedule is as follows:

Dec 12-15: First Contest
Jan 16-19: Second Contest
Feb 20-23: Third Contest
April 3-6: US Open (our championship contest)

Contests are free and open to all. They are targeted specifically at pre-college students, although others may compete as observers, ranked separately.

Contests are available in three levels of difficulty: bronze (novice), silver (intermediate), and gold (advanced):

- Bronze-level problems are designed to be accessible to those with basic programming knowledge and minimal algorithmic training (e.g., sorting, exhaustive search).

- Silver problems involve "standard" algorithmic techniques (e.g., shortest paths, greedy algorithms).

- Gold problems are quite challenging, requiring clever combinations of sophisticated algorithmic ideas.

All new competitors start out in the bronze level, and earn promotion to higher levels by demonstrating excellent performance on a contest in their current level. Contests are usually 3-5 consecutive hours in duration, which students can schedule any time during a 4-day contest window. Students can submit programs in C, C++, Java, Pascal, or Python. All contests are taken individually.

Our website (http://www.usaco.org) offers hundreds of hours of free on-line training materials for those seeking additional resources to help improve their algorithmic coding skills. For additional practice, you can also view contest problems and their solutions from the past few years, and try submitting your own solutions to see if they are judged as correct.
Posted By: Bostonian Re: USA Computing Olympiad - 11/24/14 02:06 PM
There is a company called KT Byte https://www.ktbyte.com/ that offers in-person (in Lexington, MA) and online computer programming classes, including classes to prepare for the AP Computer Science exam (which uses Java) and the USACO. I attended a presentation of theirs. Most of the in-person classes are for students age 9-12 who are new to programming. The online classes, which take place in a virtual classroom with a live instructor, are for older students. They found that the virtual classroom worked well for older students but did not keep younger students focused. Free trials are available.

The USACO has contests in three divisions:

Quote
Bronze, for students who have recently learned to program and who are just beginning to learn about fundamental problem-solving techniques like sorting and searching.

Silver, for students who are beginning to learn "standard" algorithmic techniques (e.g., shortest paths, greedy algorithms, dynamic programming).

Gold, for advanced students who are well grounded in algorithmic problem-solving techniques, who wish to challenge themselves with sophisticated and more open-ended problems.

Admission to the silver and gold levels is based on good enough performance in the bronze and silver levels. The KT Byte instructors recommend that one have the background of AP Computer Science or equivalent before trying a contest. "There are six Internet competitions held each year, each of which consists of three or four problems to be completed in a time span of three to five hours." (Wikipedia).

One can submit programs in C, C++, Java, Pascal, or Python 2 or Python 3, but competitors should probably avoid Python for speed reasons, according to the USACO site and the KT Byte instructors:

Quote
Note also that due to the slower speed of a Python program, it may not be possible to solve the largest test cases for some problems even with the inflated time limit given to Python submissions -- consider using a faster language for problems where execution time is critical.

If my 11yo son participates this year, it's just to get his feet wet, so Python is fine. KT Byte recommends using Java for the contests since it is fast and since it is needed for AP Computer Science. C++ is the most popular language for the US Open contest:

Quote
In total, there were 1925 graded submissions, broken down by language as follows:

1189 C++
541 Java
110 Pascal
34 C
26 Python 3.2
25 Python 2.7.2

The KT Byte site has some free material at https://www.ktbyte.com/java-tutorial/book and https://www.ktbyte.com/coder#pset/99/439/hello-world .

Non-US students can and do participate in the USACO US Open contest http://www.usaco.org/index.php?page=open14results .
© Gifted Issues Discussion Forum