<문제>
twoSum 함수에 숫자배열과 '특정 수'를 인자로 넘기면, 더해서 '특정 수'가 나오는 index를 배열에 담아 return해 주세요
이때,
nums : 숫자 배열
target: 두 수를 더해서 나올 수 있는 합계
return: 두 수의 index를 가진 숫자 배열
target 으로 보내는 합계의 조합은 배열 전체 중에 2개 밖에 없다고 가정하겠음.
예를들어,
nums는 [4, 9, 11, 14] target은 13 이라 할때,
nums[0] + nums[1] = 4 + 9 = 13이다.
그러면 리턴은 [0, 1]이 되어야 한다.
풀이)
const twoSum = (nums, target) => { // 가 주어 졌을때,
for (let i=0 ; i< nums.length; i++) { // target 으로 보내는 합계의 조합은 배열 전체 중 2개 밖에 없으니, i 와 j 로 반복문
for (let j=0 ; j<nums.length; j++) { // 으로 만들어서
const result = nums[ i ] + nums[ j ] //두 배열의 합을 결과로 선언을 한 후
if ( result === target) { //결과가 target과 값이 같은 경우에
return [ i, j ] //해당 배열을 리턴 하게 만들어 보았습니다.
}
}
}
}
console.log(twoSum( [4, 9, 11, 14],13)) // 예시에 있던 배열을 console.log로 찍어보니
문제에 제시된 배열이 나옵니다!