ผลต่างระหว่างรุ่นของ "An Online Programming Judge System"
ไปยังการนำทาง
ไปยังการค้นหา
Cardcaptor (คุย | มีส่วนร่วม) |
Cardcaptor (คุย | มีส่วนร่วม) (→Design) |
||
| แถว 5: | แถว 5: | ||
* <b>Ruby on Rails</b> for the web interface. | * <b>Ruby on Rails</b> for the web interface. | ||
| − | == | + | == Programming Problem Specification == |
| + | A programming problem is specified a collection of files contained inside a directory. The structure of the director is as follow. | ||
| + | <problem_id>/ | ||
| + | public_html/ --- All the files that the user can see and download via the Internet. | ||
| + | index.html --- The problem statement. | ||
| + | test_cases/ --- Contains all test data. | ||
| + | all_test.cfg --- A configuration file for all the test data. | ||
| + | <test_number>/ --- Contain files related to a particular test data. | ||
| + | test.cfg --- A configuration file specific to this test data. | ||
| + | <other files #1> | ||
| + | <other files #2> | ||
| + | . | ||
| + | . | ||
| + | . | ||
| + | script/ | ||
| + | compile --- A shell or ruby script that compiles a source code. | ||
| + | run --- A script that runs and grade the programming solution. | ||
| + | grade --- A script that collects information from various runs and tally the points. | ||
| + | |||
| + | == Compile Script == | ||
รุ่นแก้ไขเมื่อ 08:33, 19 กันยายน 2550
This page chronicles the design of an online programming judge system. The system consists of a web interface that allows user to view problems, submit solution programs, and view reports on how the programs performed. This document also includes a specification of the grading process and how to specify programming problems.
Candidate Tools
- Ruby as glue.
- Ruby on Rails for the web interface.
Programming Problem Specification
A programming problem is specified a collection of files contained inside a directory. The structure of the director is as follow.
<problem_id>/
public_html/ --- All the files that the user can see and download via the Internet.
index.html --- The problem statement.
test_cases/ --- Contains all test data.
all_test.cfg --- A configuration file for all the test data.
<test_number>/ --- Contain files related to a particular test data.
test.cfg --- A configuration file specific to this test data.
<other files #1>
<other files #2>
.
.
.
script/
compile --- A shell or ruby script that compiles a source code.
run --- A script that runs and grade the programming solution.
grade --- A script that collects information from various runs and tally the points.