VT Local Contest
From VT.Prog
Contents |
Overview
The local programming contest helps determine who will be invited to join the Virginia Tech Programming Team. It is also a good time.
Sponsorship
The 2007 VT Local Programming Contest is being sponsored by Evergrid web (http://www.evergrid.com/). They are a high performance computing company with the bulk of their software development here in Blacksburg.
Problem Data
Scoreboard
The scoreboard will be located at Scoreboard
Contestants
All Virginia Tech undergraduates are welcome to compete. It is not necessary to be a computer science major or an upperclassman. We would especially like to see younger students who might be able to compete in multiple regional competitions.
Registration
Registration form: Local Contest Register
Participation Procedure:
- Go to registration form
- Fill out registration form
- Check email for contest username/password
- Bring self, username and password to McBryde 126 (or some nearby room) on Sept 1st by 11:00am EST
Schedule
Saturday, Sept 1st 2007
Note: This schedule is subject to change.
- 10:00 - Contest Staff open the labs and begins setup (contestants are welcome at this time to practice or familiarize themselves with the environment)
- 11:00 - Practice Problem
- 12:00 - Break for lunch
- 13:00 - Contest Starts
- 17:00 - Contest Ends
- 17:30 - Awards
Prizes
- There are two divisions in the competition - Freshmen/Sophomores and Juniors/Seniors.
- The overall top prize will be a Nintento Wii.
- The top in whichever division did not get the Wii, gets a Nintento DS.
- The next highest scorer who has not yet gotten a prize will receive 50 tacos.
- As current ACM officers are not involved in problem selection or judging and thus have no competitive advantage, they are allowed to compete for prizes.
- If anyone has any concerns about this policy, please contact me (Joe Gleason). I take fairness very seriously.
Contest
The contest will be 4 hours long. It may be extended at the head judge's discretion in the event of technical difficulties. At the start of the contest time, contestants will be given the packet of 5 to 7 programming problems. The contestant who solves the most problems correctly wins.
See ACM Contest Scoring for more details and tie breakers.
When a contestant believes that he or she has a correct solution to the problem, the contestant can submit their solution via PC^2. After a judge checks it with the judge's test data (much more exhaustive than the sample), they will get one the following responses:
- Yes - Correct
- No - Wrong Answer (your program did not give the right answer for some test case that we tried)
- No - Output Format Error (read the spec again)
- No - Run-time Error (your program threw an exception or assertion or otherwise crashed)
- No - Time-limit exceeded (your program did not answer a test case quickly enough, this could mean an infinite loop or a poor solution)
If you get a No, you may continue to work on the problem and submit again later or move on to other problems. If you get a Yes, you get credit for the problem and should move on to other problems.
If there are lots of things going on, it might take some time before the judge gets around to grading your submission. Your time score is based on when it was submitted, not when it was graded. See ACM Contest Scoring.
You can do the problems in any order.
Environment
The contest will be held in the Computer Science labs in the bottom of McBryde Hall. Contestants may use the windows or linux workstations there. Each contestant uses a single workstation. In later competitions, like the regional and world finals a team of three shares a computer. However, for the local contest each contestant works alone.
Contestants may submit solutions in C/C++ or Java.
Contestants may use any compiler, editor or IDE at their station for development, but judging will be done with Sun Java 1.6/6.0 for Java submissions and GCC 4.1.1 for C/C++ submissions.
It is highly recommended that contestants use the linux workstations if possible. Every year people on windows have lots of compiler problems and we don't know how to correct most of them.
Contestants who wish to use Windows should show up early in order to familiarize themselves with the compiler environment.
It is also highly recommended that contestants come into the CS Lab before the contest and make sure you know how to deal with the compilers, IDEs and other tools on them. This can be done the morning of the contest, or any time the CS Labs are open.
IMPORTANT NOTE:
All solutions must be submitted as a single .cpp or .java source file. An important thing to learn about the IDE you choose is where it saves those files and how to make projects/solutions/whatever that only have a single source file.
The Problems
Each problem in the packet will have a description of the problem and its requirements. It will also list a small amount of sample input and output data. It is recommended that contestants run the given sample input as well as their own test input before submitting (see Testing Driven Development).
The problems will all require reading input from standard in (cin in C++, System.in in Java) and writing output to standard out (cout in C++, System.out in Java).
I is strongly recommended that you know how to use java.util.Scanner in Java or cin 'operator >>' or scanf in C. You should be able to read numbers, lines and strings from standard in with ease.
Problems can fall into a number of broad categories:
- Geometry
- Algorithms
- Graph Theory
- Number Theory
- Simulation
Some problems have components in multiple categories or none.
All problems are solvable in C++ or Java.
Staff
- Joseph Gleason - Head Judge/Tech Support/Coach
