Difference between revisions of "Validator"

From PC2wiki
Jump to: navigation, search
m (See Also: fix link)
m (Fixed minor typos in CLICS Validator section)
 
(3 intermediate revisions by one other user not shown)
Line 3: Line 3:
 
To use the PC² auto judge feature a [[Problem]] must be defined to use a validator.
 
To use the PC² auto judge feature a [[Problem]] must be defined to use a validator.
  
==Output Validator==
+
==PC² Output Validator==
  
An Output Validator judges a submission assigns a judgement.
+
See * [[PC² Validator]] article.
 +
 
 +
==CLICS Output Validator==
 +
 
 +
An Output Validator judges a submission and assigns a judgement.
  
 
An Output Validator can be use to validate:
 
An Output Validator can be use to validate:
Line 12: Line 16:
 
* problem samples
 
* problem samples
  
An output validator can be specified in the CDP under
+
An output validator can be specified in the [[CDP]] under
 
  config/<SHORT_NAME>/output_validators/<VALIDATORNAME>/<FILES>
 
  config/<SHORT_NAME>/output_validators/<VALIDATORNAME>/<FILES>
  
Line 36: Line 40:
 
* (non-42 exit code is either WA or JE (Judging Error)
 
* (non-42 exit code is either WA or JE (Judging Error)
  
==Input Validator==
+
==CLICS Input Validator==
  
 
An Input Validator validates judge's problem input data or sample data.
 
An Input Validator validates judge's problem input data or sample data.

Latest revision as of 18:25, 16 December 2016

A validator is a program that validates team's output and judge's solutions and judge's data.

To use the PC² auto judge feature a Problem must be defined to use a validator.

PC² Output Validator

See * PC² Validator article.

CLICS Output Validator

An Output Validator judges a submission and assigns a judgement.

An Output Validator can be use to validate:

  • a team's submission/solution
  • judge's solutions
  • problem samples

An output validator can be specified in the CDP under

config/<SHORT_NAME>/output_validators/<VALIDATORNAME>/<FILES>

Example:

 config/squares/output_validators/sqval/squares_valiator.cpp
 config/squares/output_validators/sqval/build
 config/squares/output_validators/sqval/run
  • build - a script to build the validator executable
  • run - a script to run the validator

run usage

run datafile answerfile feedbackfile [options] < teamsoutput

where

  • datafile - judge's input data file
  • answerfile - judge's expected output/answer file
  • feedbackfile - additional output from the validator, maybe of help to judges
  • teamsoutput - team's output

run results/output

  • exit code 42 - AC judgement (yes)
  • exit code 43 - WA judgement (no, wrong answer)
  • (non-42 exit code is either WA or JE (Judging Error)

CLICS Input Validator

An Input Validator validates judge's problem input data or sample data. The validator will read judge's input data and output whether the data is valid input for the Problem

An Input Validator can be use to validate:

  • a judge's input data file, input for Problem

An output validator can be specified in the CDP under

config/<SHORT_NAME>/input_validators/<VALIDATORNAME>/<FILES>

Example:

 config/squares/input_validators/inval/squares_input_valiator.cpp
 config/squares/input_validators/inval/build
 config/squares/input_validators/inval/run
  • build - a script to build the validator executable
  • run - a script to run the validator

run usage

run feedbackfile < datafile

where

  • datafile - judge's input data file
  • feedbackfile - additional output from the validator, maybe of help to judges

run results/output

  • exit code 42 - valid input data file
  • any other exit code - invalid input data file

See Also