mirror of
https://github.com/freeCodeCamp/freeCodeCamp.git
synced 2026-05-28 18:26:54 +00:00
1.1 KiB
1.1 KiB
id, title, challengeType, dashedName
| id | title | challengeType | dashedName |
|---|---|---|---|
| 69f8c998d78ad3171a0713bc | Challenge 289: Sum of Differences | 28 | challenge-289 |
--description--
Given an array of numbers, return the sum of the differences between each number and the one that follows it.
For example, given [1, 3, 4], return 3 (2 + 1).
--hints--
sumOfDifferences([1, 3, 4]) should return 3.
assert.equal(sumOfDifferences([1, 3, 4]), 3);
sumOfDifferences([5, -3, 3, 9, 10]) should return 5.
assert.equal(sumOfDifferences([5, -3, 3, 9, 10]), 5);
sumOfDifferences([9, 6, 15, -20, 33, 14, 25, 16, -7]) should return -16.
assert.equal(sumOfDifferences([9, 6, 15, -20, 33, 14, 25, 16, -7]), -16);
sumOfDifferences([50, 102, -46, 82, -49, 29, 71, 902, -237, 111, -61, 75]) should return 25.
assert.equal(sumOfDifferences([50, 102, -46, 82, -49, 29, 71, 902, -237, 111, -61, 75]), 25);
--seed--
--seed-contents--
function sumOfDifferences(arr) {
return arr;
}
--solutions--
function sumOfDifferences(arr) {
return arr.slice(0, -1).reduce((sum, n, i) => sum + (arr[i + 1] - n), 0);
}