[codeKata] 1)

에릭리·2022년 7월 7일
0

wecode

목록 보기
3/4

내가 푼 답안)

const twoSum = (nums, target) => {
  // 아래 코드를 작성해주세요.
  for(let i=0; i<nums.length; i++){
    for(let j=i+1; j<nums.length; j++){
      if(nums[i]+nums[j] === target){
        return result=[i,j];
      }
      }
    }
  }

for문을 i,j 로 두개를 돌리면서 j가 i와 중복되지 않게 j=i+1을 주었다. i+1을 하니 마지막엔 undefined가 나오지만 우리에겐 상관없기때문에 일단 사용. if문으로 nums[i]+nums[j] === target이 되면 return하게 했다.

아주 약간 다른 방식의 답안)

const twoSum = (nums, target) => {
  // 아래 코드를 작성해주세요.
  for(let i=0; i<nums.length; i++){
    for(let j=0; j<nums.length; j++){
      if (i != j) {
        if(nums[i]+nums[j] === target){
          return result=[i,j];
        }
      }
      }
    }
  }

위 식은 전체적으로 우리 방식과 똑같지만 j=i+1 이 아닌 0을 주면서 if문에 i != j 를 주면서 중복을 없앴다.

0개의 댓글