Dev Build / cleanup (push) Canceled after 0s
Dev Build / typecheck (push) Canceled after 0s
Dev Build / build (linux-arm64, ubuntu-24.04-arm, linux-arm64) (push) Canceled after 0s
Dev Build / build (linux-x64, ubuntu-latest, linux-x64) (push) Canceled after 0s
Dev Build / build (win-x64, windows-latest, win32-x64) (push) Canceled after 0s
Dev Build / dispatch-dev-docker (push) Skipped
20 lines
536 B
Plaintext
20 lines
536 B
Plaintext
'use strict';
|
|
|
|
function factorial(n) {
|
|
if (n <= 1) return 1;
|
|
return n * factorial(n - 1);
|
|
}
|
|
var wordSequenceMatcher = match => {
|
|
if (match.pattern !== 'wordSequence') {
|
|
return 0;
|
|
}
|
|
// Base guesses: factorial of word count (number of ways to order the words)
|
|
const baseGuesses = factorial(match.wordCount);
|
|
// Additional penalty for longer sequences
|
|
const lengthPenalty = 2 ** (match.wordCount - 2);
|
|
return baseGuesses * lengthPenalty;
|
|
};
|
|
|
|
module.exports = wordSequenceMatcher;
|
|
//# sourceMappingURL=scoring.cjs.map
|