3.2 KiB
3.2 KiB
id | title | challengeType | videoUrl | localeTitle |
---|---|---|---|---|
a3f503de51cfab748ff001aa | Pairwise | 5 | парный |
Description
arr
, найдите пары элементов, сумма которых равна второму аргументу arg
и возвращает сумму их индексов. Вы можете использовать несколько пар, которые имеют одинаковые числовые элементы, но разные индексы. Каждая пара должна использовать самые низкие доступные индексы. Как только элемент был использован, его нельзя повторно использовать для соединения с другим элементом. Например, pairwise([1, 1, 2], 3)
создает пару [2, 1]
используя 1 в индексе 0, а не 1 в индексе 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 → Return
6
забудьте использовать Read-Search-Ask, если вы застряли. Попробуйте подключить программу. Напишите свой собственный код. Instructions
Tests
tests:
- text: ''
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: ''
testString: 'assert.deepEqual(pairwise([1, 3, 2, 4], 4), 1, "<code>pairwise([1, 3, 2, 4], 4)</code> should return 1.");'
- text: ''
testString: 'assert.deepEqual(pairwise([1, 1, 1], 2), 1, "<code>pairwise([1, 1, 1], 2)</code> should return 1.");'
- text: ''
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: ''
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