CCS Enhancements

From PC2wiki
Revision as of 08:13, 28 October 2015 by Doug Lane (talk | contribs) (Load Data Files: add sample)
Jump to: navigation, search

The following are PC² additions to the CCS Standard.

contest.yaml file

The following are additions to the CCS Standard contest.yaml file.

Sites Section

The sites section defines all fields for each pc2 server/site

 - number: 1
     name: Site 1
     port: 50002
 password: siteone

 - number: 2
     name: Site 2
     port: 50002
site number
site host or IP
port for server to listen on
if not present, then the default Joe password will be created. Ex. login: site2 password site2

Accounts Section

The accounts section defines team accounts, it has equivalent functionality to the Generate Accounts feature.

 - account: TEAM
     site: 1
    count: 10
 - account: TEAM
     site: 2
    count: 10

- account: JUDGE
     site: 4
    count: 20

 - account: SCOREBOARD
     site: 4
    count: 1

Auto Judge

Automated Judging settings.

  - account: JUDGE
     site: 1
     number: 2
     letters: A
     enabled: yes

  - account: JUDGE
     number: 4,5,6
     letters: B,C,D

  - account: JUDGE
     site: 2
     number: all
     letters: B,C,D

  - account: JUDGE
     site: 1
     number: 1,3
     letters: F
     enabled: no
the site number, default 1
the account number(s), use "all" to select all judges.
the letter(s) for the problems to auto judge. Used "all" to select all problems.
whether auto judging is turned On, default yes

Minimum values are:

  - account: JUDGE
     number: 7
     letters: E


Global Setting.

The run-time execution time limit for all problems can be specified with the timeout key. A time limit can be overridden if a timeout is specified in the problem.yaml file.

# set run time limit for all problems to 20 seconds
timeout: 20

Load Data Files

In 9.3 files are loaded internally (stored within pc2) by default. A feature where one can use a CDP location

Load data files internally or externally.

load-data-files: true
load-data-files: false

Example of load-data-files in contest.yaml

# Contest Configuration, version 1.0
# PC^2 Version: Version 9.3 20151021 (Wednesday, October 21st 2015 03:55 UTC) Java ver 1.7.0_51 build 3230 Windows 7 6.1 (amd64)
# Created: 2015-10-22 21:46:00 PDT

name: '2015 CSUS Fall Contest'
short-name: '2015 Fall Contest'
start-time: 2015-10-23 17:00
duration: 4:00:00
# freeze time before end of contest
scoreboard-freeze: 1:00:00

# use external CDP files
load-data-files: false

# Judge CDP config path
judge-config-path: /home/team/cdp/config

(One other way to specify external files is in the admin pc2v9.ini file, set [server] externalfiles=yes, but using load-data-files is preferable.

Judge CDP Path

Under some circumstances the external CDP files will be under a different directory on the judge than the admin. To specify a different directory use:

judge-config-path: /home/pc2/cdp/config

Or specify the value in the field Location for Judge CDP Config on the Problems tab.


Use the judgements to load allowed judgement into the system.

Example section and values.

 - Accepted

 - Compilation Error
 - Run-time Error
 - Time-limit Exceeded - No output
 - Time-limit Exceeded - Wrong output
 - Time-limit Exceeded - Insufficient output
 - Time-limit Exceeded
 - Wrong Output
 - No Output
 - Incomplete Output
 - Excessive Output
 - Output Format Error
 - Other - Contest Staff
 - Illegal Function

problem.yaml file

Problem Name

In the CCS the Problem name (full name) is in the LaTex problem.

In PC^2 the problem name is added as a key/value pair name in the problem.yaml file. For example:

name: A - Good or Bad?

Limits Section

For each problem a Run Time Limit can be specified in the limits section

# use 15 seconds for this problem definition
   timeout: 15

Input Section

PC² has the option for a team solution (Run) to send data to the team's stdin or the team solution reads from file.

  readFromSTDIN: false
team solution reads from stdin, default is true

pc2submit script

Additional command and command line options can be used, they are:

  1. --help lists options and command line syntax
  2. --check check parameters, list filename, problem and language, do not submit.
  3. --list list contest problem and languages
  4. --listruns list run info for the user

See pc2submit for more details.

Run Submission Interface

See Also