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 c77d7e4b40..e0a9c72573 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
@@ -386,23 +386,31 @@
"type": "bonfire",
"title": "Problem 12: Highly divisible triangular number",
"tests": [
- "assert.strictEqual(euler12(), 76576500, 'message: euler12()
should return 76576500.');"
+ "assert.strictEqual(divisibleTriangleNumber(5), 28, 'message: divisibleTriangleNumber(5)
should return 28.');",
+ "assert.strictEqual(divisibleTriangleNumber(23), 630, 'message: divisibleTriangleNumber(23)
should return 630.');",
+ "assert.strictEqual(divisibleTriangleNumber(500), 76576500, 'message: divisibleTriangleNumber()
should return 76576500.');"
],
- "solutions": [],
+ "solutions": ["function divisibleTriangleNumber(n) {\n let counter = 1;\n let triangleNumber = counter++;\n\n function getFactors(num) {\n let factors = [];\n\n let possibleFactor = 1;\n let sqrt = Math.sqrt(num);\n\n while (possibleFactor <= sqrt) {\n if (num % possibleFactor == 0) {\n factors.push(possibleFactor);\n var otherPossibleFactor = num / possibleFactor;\n if (otherPossibleFactor > possibleFactor) {\n factors.push(otherPossibleFactor);\n }\n }\n possibleFactor++;\n }\n\n return factors;\n }\n\n while (getFactors(triangleNumber).length < n) {\n triangleNumber += counter++;\n }\n console.log(triangleNumber)\n return triangleNumber;\n}"],
"translations": {},
"challengeSeed": [
- "function euler12() {",
+ "function divisibleTriangleNumber(n) {",
" // Good luck!",
" return true;",
"}",
"",
- "euler12();"
+ "divisibleTriangleNumber(500);"
],
"description": [
"The sequence of triangle numbers is generated by adding the natural numbers. So the 7th triangle number would be 1 + 2 + 3 + 4 + 5 + 6 + 7 = 28. The first ten terms would be:",
"1, 3, 6, 10, 15, 21, 28, 36, 45, 55, ...",
"Let us list the factors of the first seven triangle numbers:",
- " 1: 1 3: 1,3 6: 1,2,3,610: 1,2,5,1015: 1,3,5,1521: 1,3,7,2128: 1,2,4,7,14,28",
+ "1: 1",
+ "3: 1, 3",
+ "6: 1, 2, 3, 6",
+ "10: 1, 2, 5, 10",
+ "15: 1, 3, 5, 15",
+ "21: 1, 3, 7, 21",
+ "28: 1, 2, 4, 7, 14, 28",
"We can see that 28 is the first triangle number to have over five divisors.",
"What is the value of the first triangle number to have over five hundred divisors?"
]