Using the Judging Utilities | Last modified Oct 30, 2005 |
The installation and grading works exactly the same way as last year by default. One change has been to make it easier to read team submissions off a drive other than a: by making a single change in the script j1.cmd. Although the process for the judge is the same, the scripts have changed. j1.cmd has changed to allow a larger number of problems and to make it easy to change the source of team input away from drive a:. j2.cmd has been changed consistent with the new requirement that solutions write to standard output.
To install the utilities in Windows:
This will copy the subdirectory mcpc2005, and subdirectories mcpc2005\team, mcpc2005\judge, mcpc2005\back, mcpc2005\notes, and directories with each of the individual problems, and make the current directory mcpc2005\team.
All directories mentioned below are relative to the mcpc2005 directory.
To judge a program, make sure the current directory is still team, and then just type
j L #
where L is the problem letter and # is the team number, as in "j e 12" to grade problem e for team 12.
This script file as written will
In step 8 the files are compared using fc. If the two files are identical it will say so, and otherwise it will show the differences. The output of fc is fairly clear when it all fits on one screen. If there are a lot of errors it may be easier to see them in step 9.
Step 9 starts in a popup KDiff3 window automatically if the files
are not exactly alike. This may be unnecessary if it is clear
from the fc output that there is a wrong answer. KDiff3 has
several useful features for evaluating errors:
Determine whether any difference is a wrong answer or if all errors are presentation errors.
IMPORTANT NOTE: Site-Specific Modifications to the Grading UtilitiesThese batch files assume that g++ and gcc and Sun's version 1.5 of java.exe and javac.exe are in the execution path. If you have an IDE that adds additional flags when it invokes g++, gcc or javac, make sure you alter j2.cmd to match.
If you modified j2.cmd last year to compile with g++ and gcc, and have added further flags appropriate to your IDE's, you cannot use the old one as is: the lines executing a submission must be changed to capture standard output, as this year's version does.
To allow problem submissions to arrive on a flash drive or any media not read through drive a:, the script j1.cmd has a line right near the top setting the environment variable MCPCdrive. If you want a drive other than a: used, change it.
Testing Scripts Ahead of Time
The scripts will arrive with your official packet in the week of the competition, but if you are planning to use them or variants of them, you are strongly encouraged to test early for this year's setup. You can obtain a test setup in utilTest2005.zip.
Archive of submitted programs
Example: The 4th time that team 7 has a C++ program for problem E graded on the same computer, the batch file judge\nextback.cmd is called to copy their source program to back\7e4.cpp.
Browsing in your spare time
All the judges' files are copied by install.cmd. While waiting for the next problem to grade, you can browse through the problem files and administrative information files by starting a web browser at the local file browse.html in the mcpc2005 directory.