RoboDesigners programming team members competed in the November competition of the USA Computing Olympiad (USACO). This is a great competition for anyone interested in programming. The contest problems develop algorithmic thinking and problem solving ability.
Additionally, USACO is the qualifying event for the USA’s team in the International Olympiad in Informatics (IOI). Anyone may compete in the USACO competitions, but high-school participants residing in the USA are the only ones eligible to represent the US in the IOI.
USACO holds monthly online competitions. Unlike many programming competitions, competitors participate as individuals, rather than on teams. Competitors are divided into three divisions: Bronze, Silver, and Gold. All competitors start in the “Bronze” division and are promoted to the higher divisions of “Silver” and “Gold” based on performance in past competitions. As may be expected, problems in the Silver division are harder than those in the Bronze division, and likewise for Gold and Silver.
The competitions are scheduled to be “open” for a period of several days, but once a competitor logs on and starts the competition, they have 3-5 hours to complete the 3-4 problems for their division.
To compete in USACO, you will need to know at least one of C++, C, Java, Python, or Pascal. Basic file access is mandatory, as well as all elementary program components–loops, if/else structures, arrays, etc. Objects or structs can be helpful, but not required.
The competition questions are challenging; to get used to the type of questions, USACO has constructed training pages, found here. In general, most problems will be testing knowledge of a certain type of algorithm. The USACO training pages will discuss the algorithms and provide practice in solving common problem types.
I highly recommend the USACO competition for anyone who is interested in programming.