CCS Enhancements
The following are PC² additions to the CCS Standard.
Contents
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
sites: - number: 1 name: Site 1 IP: 130.86.67.202 port: 50002 password: siteone - number: 2 name: Site 2 IP: 130.86.67.201 port: 50002
- number
- site number
- IP
- site host or IP
- port
- port for server to listen on
- password
- 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.
accounts: - 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.
auto-judging: - 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
- site
- the site number, default 1
- number
- the account number(s), use "all" to select all judges.
- letters
- the letter(s) for the problems to auto judge. Used "all" to select all problems.
- enabled
- whether auto judging is turned On, default yes
Minimum values are:
auto-judging: - account: JUDGE number: 7 letters: E
Timeout
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
For files that are external to pc2 a Judge's path may be needed.
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
Via the Admin UI specify the value in the field Location for Judge CDP Config on the Problems tab.
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
Judgements
Use the judgements to load allowed judgement into the system.
Example section and values.
accepted-judgement: - Accepted judgements: - 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 limits: 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.
input: readFromSTDIN: false
- readFromSTDIN
- team solution reads from stdin, default is true
Judging Type Section
pc2submit script
Additional command and command line options can be used, they are:
- --help lists options and command line syntax
- --check check parameters, list filename, problem and language, do not submit.
- --list list contest problem and languages
- --listruns list run info for the user
See pc2submit for more details.
Run Submission Interface
See Also
- CCS Standard
- YAML Official site YAML file format description