diff --git a/challenges/08-coding-interview-questions-and-take-home-assignments/project-euler-problems.json b/challenges/08-coding-interview-questions-and-take-home-assignments/project-euler-problems.json
index 7269204b1f..598005e081 100644
--- a/challenges/08-coding-interview-questions-and-take-home-assignments/project-euler-problems.json
+++ b/challenges/08-coding-interview-questions-and-take-home-assignments/project-euler-problems.json
@@ -1661,23 +1661,28 @@
"type": "bonfire",
"title": "Problem 47: Distinct primes factors",
"tests": [
- "assert.strictEqual(euler47(), 134043, 'message: euler47()
should return 134043.');"
+ "assert.strictEqual(distinctPrimeFactors(2, 2), 14, 'message: distinctPrimeFactors(2, 2)
should return 14.');",
+ "assert.strictEqual(distinctPrimeFactors(3, 3), 644, 'message: distinctPrimeFactors(3, 3)
should return 644.');",
+ "assert.strictEqual(distinctPrimeFactors(4, 4), 134043, 'message: distinctPrimeFactors(4, 4)
should return 134043.');"
],
- "solutions": [],
+ "solutions": ["function distinctPrimeFactors(targetNumPrimes, targetConsecutive) {\n\n function isPrime(num) {\n for (let i = 2, s = Math.sqrt(num); i <= s; i++) {\n if (num % i === 0) {\n return false;\n }\n }\n return num !== 1;\n }\n\n function getPrimeFactors(num) {\n const factors = [];\n for (let i = 2; i <= Math.sqrt(num); i++) {\n if (num % i === 0) {\n // found a factor\n if (isPrime(i)) {\n factors.push(i);\n }\n if (isPrime(num / i) && i !== Math.sqrt(num)) {\n factors.push(num / i);\n }\n }\n }\n return factors;\n }\n\n function findConsecutiveNumbers() {\n let number = 0;\n let consecutive = 0;\n while (consecutive < targetConsecutive) {\n number++;\n if (getPrimeFactors(number).length >= targetNumPrimes) {\n consecutive++;\n } else {\n consecutive = 0;\n }\n }\n return (number - targetConsecutive) + 1;\n }\n\n return findConsecutiveNumbers();\n }"],
"translations": {},
"challengeSeed": [
- "function euler47() {",
+ "function distinctPrimeFactors(targetNumPrimes, targetConsecutive) {",
" // Good luck!",
" return true;",
"}",
"",
- "euler47();"
+ "distinctPrimeFactors(4, 4);"
],
"description": [
"The first two consecutive numbers to have two distinct prime factors are:",
- "14 = 2 × 715 = 3 × 5",
+ "