mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-20 01:38:19 +08:00
judge: respect hack subtask configured score
This commit is contained in:
1 parent
f87c320e42
commit
3401cd75bf
3 files changed
+9
-5
No files matched your search
@@ -89,10 +89,13 @@ export const runFlow = async (ctx: Context, task: Task) => {
|
||||
const runner = task.judgeCase(subtask.cases.find((i) => i.input === ctx.meta.hackRejudge));
|
||||
const res = await runner(ctx, ctxSubtask, runner);
|
||||
if (res) ctx.next({ case: res });
|
||||
ctx.end({
|
||||
status: ctxSubtask.status === STATUS.STATUS_ACCEPTED ? STATUS.STATUS_ACCEPTED : STATUS.STATUS_HACKED,
|
||||
score: 97,
|
||||
});
|
||||
const totalScore = Math.sum(ctx.config.subtasks.map((i) => i.score));
|
||||
if (ctxSubtask.status !== STATUS.STATUS_ACCEPTED) {
|
||||
ctx.end({
|
||||
status: STATUS.STATUS_HACKED,
|
||||
score: totalScore - subtask.score,
|
||||
});
|
||||
} else ctx.end({ nop: true });
|
||||
} else {
|
||||
const tasks = [];
|
||||
for (const sid in ctx.config.subtasks) tasks.push(judgeSubtask(ctx.config.subtasks[sid], sid, task.judgeCase)(ctx));
|
||||
|
||||
Reference in new issue
Block a user