2.7 KiB
2.7 KiB
id | title | challengeType | videoUrl | localeTitle |
---|---|---|---|---|
a3f503de51cfab748ff001aa | Pairwise | 5 | 成对 |
Description
arr
,找到其总和等于第二个参数arg
元素对,并返回它们的索引之和。您可以使用具有相同数字元素但索引不同的多个对。每对应使用尽可能低的可用指数。一旦元素被使用,它就不能被重用来与另一个元素配对。例如, pairwise([1, 1, 2], 3)
使用indice 0处的1而不是indice 1处的1创建一对[2, 1]
,因为0 + 2 <1 + 2。例如, pairwise([7, 9, 11, 13, 15], 20)
返回6
。总和为20的对是[7, 13]
和[9, 11]
。然后我们可以用它们的索引和值写出数组。 指数 | 0 | 1 | 2 | 3 | 4 |
---|---|---|---|---|---|
值 | 7 | 9 | 11 | 13 | 15 |
9 + 11 = 20→指数1 + 2 = 3
3 + 3 = 6→返回
6
如果卡住,请记住使用Read-Search-Ask 。尝试配对程序。编写自己的代码。 Instructions
Tests
tests:
- text: '<code>pairwise([1, 4, 2, 3, 0, 5], 7)</code>应该返回11。'
testString: 'assert.deepEqual(pairwise([1, 4, 2, 3, 0, 5], 7), 11, "<code>pairwise([1, 4, 2, 3, 0, 5], 7)</code> should return 11.");'
- text: '<code>pairwise([1, 3, 2, 4], 4)</code>应该返回1。'
testString: 'assert.deepEqual(pairwise([1, 3, 2, 4], 4), 1, "<code>pairwise([1, 3, 2, 4], 4)</code> should return 1.");'
- text: '<code>pairwise([1, 1, 1], 2)</code>应该返回1。'
testString: 'assert.deepEqual(pairwise([1, 1, 1], 2), 1, "<code>pairwise([1, 1, 1], 2)</code> should return 1.");'
- text: '<code>pairwise([0, 0, 0, 0, 1, 1], 1)</code>应返回10。'
testString: 'assert.deepEqual(pairwise([0, 0, 0, 0, 1, 1], 1), 10, "<code>pairwise([0, 0, 0, 0, 1, 1], 1)</code> should return 10.");'
- text: '<code>pairwise([], 100)</code>应该返回0。'
testString: 'assert.deepEqual(pairwise([], 100), 0, "<code>pairwise([], 100)</code> should return 0.");'
Challenge Seed
function pairwise(arr, arg) {
return arg;
}
pairwise([1,4,2,3,0,5], 7);
Solution
// solution required