# Clarification on the pairwise challenge

Clarification on the pairwise challenge
0

#1

Hey guys, I was just wondering if anyone could provide some clarification for me on the solution to the Pairwise challenge. I figured it out, I think. It works. But I don’t understand the basic solution on the “Get a hint” page. It sums k and i, but those aren’t the indices, right? Those are just whatever iteration of the array. So I don’t understand where in the code it is the indices being added, and I’d just really like clarification because I don’t like not understanding things, even if I somehow did it successfully anyway. Thanks!

The solution I’m referring to:

``````function pairwise(arr, arg) {
// Set sum of indices to zero
var sum = 0;
// make a local copy of the arguments object so we don't modify it directly
var pairArr = arr.slice();
// looping from first element
for(i = 0; i < pairArr.length; i++) {
//Looping from second element by setting first element  constant
for(j = i + 1; j < pairArr.length; j++) {
// Check whether the sum is equal to arg
if(pairArr[i] + pairArr[j] == arg) {
sum += i + j;
//Set the indices to NaN so that they can't be used in next iteration
pairArr[i] = pairArr[j] = NaN;
}
}
}
return sum;
}

// test here
pairwise([1,4,2,3,0,5], 7);
``````

#2

You meant `j`, not `k`? Anyway, those are indeed the indices of the array. That’s why `pairArr[i]` and `pairArr[j]` give you the contents of the array.

#3

When you iterate through an array. You’re iterating through elements of an array. Those elements are sitting on the indices of the array.

On a side note, pairwise has got to be the simplest advanced algorithm took me like 2 minutes to solve.