傳統題的配置

ighshssjjsjs發表於2024-05-30

二.傳統題配置
1.資料
對於傳統題,上傳的×.zip資料包應當包括這些內容:

題目配置檔案
測試資料
額外測試資料(包括題面中所給的測試樣例)
(開啟 hack)資料檢驗器
(開啟 hack)標準程式

2.題目配置檔案
題目配置檔案應當命名為problem.conf。這是一份配置的樣例:

[n_tests 10
n_ex_tests 1
n_sample_tests 1
input_pre www
input_suf in
output_pre www
output_suf out
time_limit 1
memory_limit 512
output_limit 64
use_builtin_judger on
use_builtin_checker ncmp ]
測試點

[ n_tests 10
n_ex_tests 1
n_sample_tests 1]
這三行分別代表標準測試點、額外測試點和測試樣例的數量。其中,額外測試點的前幾個一定是測試樣例,所以你必須把題目中給出的測試樣例放到額外測試點當中。

UOJ 的 extra test 是指在 AC 的情況下會測額外資料,如果某個額外資料通不過會被倒扣3分。

[input_pre www
input_suf in
output_pre www
output_suf out ]
這四行分別指明瞭每個測試點輸入檔案的字首、副檔名、輸出檔案的字首、副檔名。

標準測試點的檔名應當形如:www1.in、www1.out、www2.in、www2.out……

額外測試點的檔名應當形如:ex_www1.in、ex_www1.out、ex_www2.in、ex_www2.out……

限制
time_limit 1
memory_limit 512
output_limit 64
這三行配置了評測時對選手程式的時間限制、記憶體空間限制和輸出限制。

時間限制的單位為秒,不能為小數。記憶體空間和輸出限制的單位為 MB。

校驗器(checker)
校驗器用來檢查選手程式的輸出是否正確。

use_builtin_judger on
use_builtin_checker ncmp
第一行表示使用內建校驗器,第二行表示使用的校驗器型別。testlib 提供了很多奇奇怪怪的校驗器。

相關文章