South African Computer Olympiad
|This article is an orphan, as no other articles link to it. Please introduce links to this page from ; try the Find links tool for suggestions. (February 2009)|
The South African Computing Olympiad (SACO) is an annual computer programming competition for secondary school students (although at least one primary school student has participated) in South Africa. The South African team for the International Olympiad in Informatics is selected through this competition.
The competition consists of three rounds. The first round is a pen-and-paper aptitude examination at the entrant's school, testing a combination of general knowledge, knowledge of computers, problem solving and basic programming (entrants are often required to program an imaginary robot in a fictional Logo-like language). Although the first round is not compulsory, it is accessible to those who do not have access to, or knowledge of, computers. 31,926 students entered the first round in 2006.
In the second round, actual programs must be written and executed. There are five questions, each requiring a different program to be written. Most entrants only answer a single question. The tasks usually include one basic shape-drawing program; for example, the 2004 question "TriSquare" required output such as:
* * * * * ***** * * * * * * *****
The top performers (those who have answered four or five questions in the second round) are invited to the final round. Usually between 10 and 15 students are chosen, but since the introduction of a new language and increased funding from the Shuttleworth Foundation in 2005 there have been between 20 and 30 students. The final round is held at the University of Cape Town: the finalists stay in Cape Town over a weekend. The competition consists of two five-hour rounds, the first on Saturday and second on Sunday. The problems are similar to those in the USACO, though somewhat easier. On the Monday after the competition, a prize-giving ceremony is held.
The top six entrants are awarded medals (one gold, two silver and three bronze). There are cash prizes, both for the winners and their schools. There are bonus prizes of R100,000 for using Python, due to Shuttleworth's sponsorship. The medal-winners are given additional training from the Olympiad coaches and the USACO training programme. Four programmers are then selected from the six to represent South Africa at the International Olympiad in Informatics.
In the first round, it is not necessary to know a programming language. In the second round, contestants may use a language of their choice (within reason - Brainfuck is presumably excluded). In the third round, however, the set of languages is restricted to:
- Pascal - the language taught in high schools in some South African provinces (including Gauteng)
- Java - taught in other provinces (including the Western Cape)
- Python - sponsored by Mark Shuttleworth
Python programs are given a 10x time bonus.
South African IOI Medalists
The following table lists all South African IOI medalists ordered by colour and number of medals (or ranking if gold), then by last year a medal was received. B represents a Bronze medal, S a Silver and G a Gold.
|Bruce Merry||G (6th) 2001||G (7th) 2000||S 1999||S 1998||B 1997||B 1996|
|Daniel Wright||G (1st) 1998|
|Richard Starfield||G (13th) 2004|
|Kevin Liu||S 1995||S 1994|
|Ralf Kistner||B 2007||S 2006|
|Carl Hultquist||B 2000||S 1999|
|Francois Conradie||B 2010||B 2009|
|Keegan Carruthers-Smith||S 2006|
|Joshua Yudaken||S 2006|
|Linsen Loots||S 2003|
|Johan Du Toit||S 2001|
|Danie Conradie||S 1997|
|Brian Shand||S 1994|
|David Butler||S 1992|
|Keith Guthrie||S 1992|
|Bennie Swart||B 2011|
|Vaughan Newton||B 2011|
|Graham Manuell||B 2010|
|Kosie van der Merwe||B 2010|
|Sean Wentzel||B 2010|
|Saadiq Moolla||B 2008|
|Dirk-B Coetzee||B 2007|
|Timothy Stranex||B 2005|
|Shen Tian||B 2003|
|Jacques Conradie||B 2002|
|Heinrich Du Toit||B 2002|
|Jacob Croon||B 2001|
|Liesl Penzhorn||B 2000|
|Hugo van der Merwe||B 2000|
|Paul Cook||B 1999|
|Rainer Hoft||B 1999|
|Jaco Conrje||B 1998|
|Timothy Lawrence||B 1997|
|Gert-Jan Van Rooyen||B 1995|