Skip to content

Instantly share code, notes, and snippets.

@mwakipesile
Last active May 4, 2018 00:26
Show Gist options
  • Save mwakipesile/b926c9ab789a1f793a350a587f80cdc7 to your computer and use it in GitHub Desktop.
Save mwakipesile/b926c9ab789a1f793a350a587f80cdc7 to your computer and use it in GitHub Desktop.
function sumOfMultiples(limit, factors = [3, 5]) {
var multiple;
var multiples = [];
//TODO: Validate inputs
var collectFactorsUniqueMultiples = function(factor) {
multiple = factor;
while (multiple < limit) {
if (!multiples.includes(multiple)) multiples.push(multiple);
multiple += factor;
}
};
var sumMultiples = (sum, currentMultiple) => sum + currentMultiple;
factors.forEach(collectFactorsUniqueMultiples);
return multiples.reduce(sumMultiples, 0);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment