「TOJ」:修訂間差異

出自TFcisWiki
跳至導覽 跳至搜尋
行 9: 行 9:
== Special Judge ==
== Special Judge ==
將[https://github.com/TFcis/Problem-setting-tools/blob/master/TOJ-problem-example/conf.json conf.json]中的check從diff改成ioredir,及設定metadata如下。
將[https://github.com/TFcis/Problem-setting-tools/blob/master/TOJ-problem-example/conf.json conf.json]中的check從diff改成ioredir,及設定metadata如下。
;/conf.json
<syntaxhighlight lang="JSON">{
<syntaxhighlight lang="JSON">{
"check": "ioredir",
"check": "ioredir",
行 26: 行 27:
}
}
}</syntaxhighlight>
}</syntaxhighlight>

;/res/check/check.cpp
分別從答案及輸出分別讀入long double。
<syntaxhighlight lang="C++">
long double Answer, Output;
FILE *ansf = fdopen(2, "r");

scanf("%Lf", &Output);
fscanf(ansf, "%Lf", &Answer);
</syntaxhighlight>

;/res/check/build
<syntaxhighlight lang="Bash">
#!/bin/sh
g++ -o check check.cpp
</syntaxhighlight>


參考 https://hackmd.io/s/BkHdt57I
參考 https://hackmd.io/s/BkHdt57I

於 2021年9月11日 (六) 00:16 的修訂


https://toj.tfcis.org/oj/

Special Judge

conf.json中的check從diff改成ioredir,及設定metadata如下。

/conf.json
{
    "check": "ioredir",
    "metadata": {
        "redir_test": {
            "pipeout": 1,
            "testin": 0,
            "testout": -1,
            "pipein": -1
        },
        "redir_check": {
            "ansin": 2,
            "testin": -1,
            "pipeout": 0,
            "pipein": -1
        }
    }
}
/res/check/check.cpp

分別從答案及輸出分別讀入long double。

long double Answer, Output;
FILE *ansf = fdopen(2, "r");

scanf("%Lf", &Output);
fscanf(ansf, "%Lf", &Answer);
/res/check/build
#!/bin/sh
g++ -o check check.cpp

參考 https://hackmd.io/s/BkHdt57I

參見