Skip to main content

Custom contest support for the Timus Online Judge

Project description

About

This Python package provides support for custom contests on the Timus Online Judge.

Define the players and problems to get an automatically-updating score board which is generated according to the ACM ICPC rules.

The sample output is available for preview.

Configuration

timus.scoreboard uses INI-style files for configuration. Here is a sample configuration:

[contest]
title = My sample contest
start = 12:00:00 1 Oct 2012
end = 17:00:00 1 Oct 2012

[users]
1000 = Team 1 (John, Jack, Suzan)
1001 = Team 2 (Mike, Roger, Dan)

[problems]
1000 = A
1001 = B
1002 = C
1003 = D

[config]
output_dir = ./output

The values for contest section do not require an explanation. Just be sure to stick to the date format used and remember that the Timus Online Judge is operating in UTC+6 time zone.

Next, list the user IDs and their names in the users section. The ID is the numerical part of your Judge ID. The remaining letters should be kept secret and not entered in the configuration. This means that if you’re organizing a contest, the IDs must be collected beforehand. It should be noted that while contestants may have specified their names in the Timus system, you will have to specify official names (e.g. containing the last names of team members) in the configuration file.

Problems must be entered in the problems section. In the Timus system, problems have names, but for an ACM-style contest you will want to have short names (A/B/C/… is a standard).

Running timus-scoreboard

After installing timus.scoreboard egg, you should be able to execute the timus-scoreboard script. The location of this script depends on the way you installed the egg. For instance, if zc.buildout was used, the script will reside in bin directory as generated by buildout.

The script requires the name of the configuration file as a parameter:

wormhole:timus-scoreboard admp$ bin/timus-scoreboard -n sample.conf
Retrieving http://acm.timus.ru/status.aspx?count=100...
Writing ./output/index.html...
Writing ./output/top.html...
Writing ./output/table.html...

If you, however, omit the -n option, the script will keep running until the contest ends. This is useful if you want to update the score table every few minutes.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

timus.scoreboard-0.2.tar.gz (6.7 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page