RISK IT

[code kata] week1 - day1 본문

IT/Algorithm & CodeKata

[code kata] week1 - day1

nomoremystery 2023. 1. 17. 01:17
반응형

week1 - day1

문제

twoSum함수에 숫자배열과 '특정 수'를 인자로 넘기면,
더해서 '특정 수'가 나오는 index를 배열에 담아 return해 주세요.

nums: 숫자 배열
target: 두 수를 더해서 나올 수 있는 합계
return: 두 수의 index를 가진 숫자 배열

예를 들어,

nums은 [4, 9, 11, 14]
target은 13

nums[0] + nums[1] = 4 + 9 = 13 이죠?

그러면 [0, 1]이 return 되어야 합니다.

# 가정
target으로 보내는 합계의 조합은 배열 전체 중에 2개 밖에 없다고 가정하겠습니다.

나의 풀이

const twoSum = (nums, target) => {
  for (let i = 0; i < nums.length; i++) {
    for (let j = 0; j < nums.length; j++) {
      const result = nums[i] + nums[j];
      if (result === target) {
        return [i, j];
      }
    }
  }
};

이중 for 문을 사용해야 한다는 것은 잘 떠올렸지만,

const result = nums[i] + nums[j];

이렇게 result 변수에 값을 저장해야겠다는 생각을 못해서 쉽게 못풀었던 문제다.
문제 자체는 코드 길이를 보면 알 수 있듯이 어렵지 않았지만, 아직 실력이 한참 부족하다.



그리고 파트너랑 짝을 이뤄서 진행하는 코드 카타의 목적에 맞게 navigator로서의 역할을 수행하는 것도 쉽지 않았다.
이미 원래 그렇게 내가 말을 잘하는 편이 아니라는 것은 알고 있었지만, 역시나 내가 아는 지식을 다른 사람에게 쉽게 전달하는 커뮤니케이션 능력이 부족하다는 것을 다시 한 번 깨달았다.



좋은 개발자는 좋은 커뮤니케이션 능력을 갖춰야하기에 다른 직업군 모두에게서 중요하겠지만 코드카타를 연습하면서 커뮤니케이션 능력 향상에도 초점을 맞춰야겠다.

반응형

'IT > Algorithm & CodeKata' 카테고리의 다른 글

[code kata] week 1 - day 5  (0) 2023.01.24
[code kata] week 1 - day 4  (0) 2023.01.24
[code kata] week 1 - day 3  (0) 2023.01.18
[code kata] week 1 - day 2  (0) 2023.01.17