[CodeKata] Week1 - Day1
📌 CodeKata - Week1, Day1
문제
two_sum
함수에 숫자 리스트와 '특정 수'를 인자로 넘기면, 더해서 '특정 수'가 나오는 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
개 밖에 없다고 가정하겠습니다.
풀이1
def two_sum(nums, target): # 리스트, 리스트이 두수를 더했을 때 나오는 합계
arr = [] # 답을 넣기 위해
length = len(nums)
for i in range(length):
for j in range(length):
if nums[i] + nums[j] == target:
arr.append(i)
arr.append(j)
return arr
➡️ 처음에 재경님이랑 풀었던 방식. 빈 리스트를 만들고 정답 하나씩 추가하고 nums의 길이도 따로 구해 변수에 넣어줌.
풀이2
def two_sum(nums, target): # 리스트, 리스트이 두수를 더했을 때 나오는 합계
for i in range(0, len(nums)):
for j in range(i +1 , len(nums)): #중복을 막기 위해 i+1을 시작점으로
if nums[i] + nums[j] == target:
return [i,j] #리스트형으로 return
➡️ 위의 방식에서 필요없는 코드는 빼고 다시 푼 방법
Author And Source
이 문제에 관하여([CodeKata] Week1 - Day1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@byhazy/CodeKata-Week1-Day1저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)