From 7ed64cbc9c55f2d5a545d18f2e95688d63cae0e7 Mon Sep 17 00:00:00 2001 From: Yichi Zhang Date: Thu, 23 May 2024 00:41:52 -0700 Subject: [PATCH] Improve performance of checker for valid math contracts (#1286) --- src/data/codingcontracttypes.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/data/codingcontracttypes.ts b/src/data/codingcontracttypes.ts index e17ec243c..40d62cdc2 100644 --- a/src/data/codingcontracttypes.ts +++ b/src/data/codingcontracttypes.ts @@ -1282,8 +1282,9 @@ export const codingContractTypesMetadata: ICodingContractTypeMetadata[] = [ // Prevent player from providing extra wrong answers and still receiving credit if (result.length !== sanitizedPlayerAnsArr.length) return false; - for (const expr of result) { - if (!sanitizedPlayerAnsArr.includes(expr)) { + const resultsSet = new Set(result); + for (const expr of sanitizedPlayerAnsArr) { + if (!resultsSet.has(expr)) { return false; } }