From 1a87f1f7c07681af5e31958df4a2f363ab1b607e Mon Sep 17 00:00:00 2001 From: Sanket Kogekar Date: Wed, 26 Feb 2020 11:22:40 -0800 Subject: [PATCH] add: solution to project euler problem 20 (#38257) * add: solution to project euler problem 20 * Update curriculum/challenges/english/08-coding-interview-prep/project-euler/problem-20-factorial-digit-sum.english.md Accidentally added last line. Calling function is unnecessary in solution. Co-Authored-By: Oliver Eyton-Williams * right place for starting braces Co-Authored-By: Manish Giri * moved starting brace to previous line. Co-Authored-By: Manish Giri Co-authored-by: Oliver Eyton-Williams Co-authored-by: Manish Giri --- .../problem-20-factorial-digit-sum.english.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/curriculum/challenges/english/08-coding-interview-prep/project-euler/problem-20-factorial-digit-sum.english.md b/curriculum/challenges/english/08-coding-interview-prep/project-euler/problem-20-factorial-digit-sum.english.md index 68fe997f7a..8f650ecc4e 100644 --- a/curriculum/challenges/english/08-coding-interview-prep/project-euler/problem-20-factorial-digit-sum.english.md +++ b/curriculum/challenges/english/08-coding-interview-prep/project-euler/problem-20-factorial-digit-sum.english.md @@ -61,7 +61,14 @@ sumFactorialDigits(100);
```js -// solution required +let factorial = (n) => n <= 1 ? BigInt(n) : BigInt(n) * BigInt(factorial(--n)); + +let sumDigits = n => n.toString().split('').map(x => parseInt(x)).reduce((a,b) => a + b); + +function sumFactorialDigits(n) { + return sumDigits(factorial(n)); +} + ```