judge: objective: allow empty answers

pull/380/head
undefined 2 years ago
parent 3cfbb66350
commit f51d94edca

@ -1,7 +1,7 @@
{
"name": "@hydrooj/hydrojudge",
"bin": "bin/hydrojudge.js",
"version": "2.21.0",
"version": "2.21.1",
"main": "package.json",
"author": "undefined <i@undefined.moe>",
"repository": "https://github.com/hydro-dev/Hydro.git",

@ -39,7 +39,7 @@ export async function judge({
memory: 0,
};
if (typeof ansInfo[0] === 'string') {
if (ansInfo[0].trim() === (answers[key] as any).trim()) {
if (ansInfo[0]?.trim() === (answers[key] as any)?.trim()) {
totalScore += score;
totalStatus = Math.max(totalStatus, STATUS.STATUS_ACCEPTED);
next({
@ -64,8 +64,8 @@ export async function judge({
}, +caseId);
}
} else {
const stdAns = new Set(ansInfo[0]);
const ans = new Set(answers[key]);
const stdAns = new Set(ansInfo[0] || []);
const ans = new Set(answers[key] || []);
const correct = stdAns.size === ans.size && [...stdAns].every((x) => ans.has(x));
const partialCorrect = [...stdAns].some((x) => ans.has(x)) && [...ans].every((x) => stdAns.has(x));
if (correct) {

Loading…
Cancel
Save