South Central USA Regional Programming Contest
Intl Prog Contest
South Central US Regional
2002 South Central Regional Programming Contest Report
I wish to thank everyone who made this possible -- especially the contestants and coaches.
The International Programming Contest will be run on Linux for the first time this year (March 2003). We volunteered last year to be an alpha test site for running a contest on Linux (with the goal of being as close to the International as possible).
We had a special challenge that International will not -- our machines must run Windows immediately before and after the contest. This made it impractical to install Linux on them.
The lab staff was able to provide us two 500 MB FAT32 partitions. Using this, we created a bootable CD based on RedHat Linux 7.2. Taking advantage of Klaus Knopper's work on KNOPPIX, we were able to used compressed loopback to store over 1.5 GB of data on the CD. This allowed us to put a relatively full RedHat 7.1 installation on the CD (See our Environment page for content details).
This left only the challenge of swap, user space, and Read/Write areas for the system itself. We solved this by creating a 500 MB file in the FAT32 partition, formatting it for swap and then enabling swap. We then made another 500 MB container file on the second partition, formatted it as ext3 and proceeded to put /home and any other Read/Write space we needed on here.
The CD was a great success. It did everything it should have. Contestants had access to KDE, Gnome, Fluxbox, emacs, Xemacs, vim, gcc, g++, java, ...
As with all good things, a mistake cropped up. The CD development team was lacking in Java experience. When Eclipse was installed, it recommended SUN JDK 1.3.1. That is what we installed. Unfortunately, the version we grabbed was buggy (in the interim three weeks between the download and the contest two more releases of 1.3.1 were made). We were unaware of the buggy nature.
In practice tests prior to the contest no problems showed up. During the practice contest, the Friday of the contest, some people were having problems with Java but PC^2 seemed to work okay.
Come Saturday, nothing based on Java seemed to work. Even a java -version would core dump regularly. Efforts to distribute Java 1.4 on the fly to the 100+ systems met with mixed success.
The end result was that various teams had various levels of access to PC^2 throughout the contest. We tried everything we could, but could not solve this problem dynamically. The PC^2 Development Team was present, and even they were not able to help us solve this issue.
We attempted to fall back to floppy submission for the teams that were unable to run PC^2. This ran into problems because some of the teams did not know how to unmount the floppies properly and some were received blank.
We did tar up every contestants home directory can copy it back to our server. When the contest was over, we took each team that solved four or more problems (fourteen of them) and gave each team the lesser of their submission time and the date/time stamp on the source code. We also removed penalties for redundant submissions after the lesser time.
All in all, it was a real bad day in the Judge Room. In spite of this, one team managed to solve all eight problems presented to them. Much of the staff missed the Banquet while making sure that the top fouteen teams got the lowest possible time (home directory, floppy, PC^2 submission).
After the contest, the remaining team's home directories were explored and standings were updated before they were published.
We had 74 teams register and participate. We also had 5 teams made up of alternates (some of which solved problems). We tried to create an area for interested coaches to participate but the technical issues prevented this form happening.
Check out these pages for additional information: