[wecode/codekata]Day 1

Jimin_Note·2022년 6월 8일
0

⌨️wecode/code_kata

목록 보기
1/13
post-thumbnail

📍문제

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

nums -> [4, 9, 11, 14]
targe -> 13

nums[0] + nums[1] = 4 + 9 = 13

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

📍내 코드

def two_sum(nums, target):
    for i in range(len(nums)):
      for j in range(len(nums)):
        if ((nums[i] + nums[j]) == target) & (nums[i] != nums[j]): 
        #순차적으로 모든 값을 서로 더하여 target과 같은 수를 찾고 그중에서 중복제거
            return [i, j]

if ((nums[i] + nums[j]) == target) & (nums[i] != nums[j]):
이 코드도 머리를 쓰다가 만든 수정 본이지만 여기서 더 간단하게 할 수 있는 방법이 있을 것 같은데 생각을 못했다!

📍다른 방법

def two_sum(nums, target):
#어차피 nums중에서 오직 2개로 target값을 만들 수 있기 때문에
   for i in nums:
       temp = target - i #temp는 nums 중 하나
       if temp in nums: #nums에서 temp을 찾아서
           return [nums.index(i), nums.index(temp)] #반환
profile
Hello. I'm jimin:)

0개의 댓글