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
๊ฐ ๋ฐ์ ์๋ค๊ณ ๊ฐ์ ํ๊ฒ ์ต๋๋ค.
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์ ๊ธธ์ด๋ ๋ฐ๋ก ๊ตฌํด ๋ณ์์ ๋ฃ์ด์ค.
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
โก๏ธ ์์ ๋ฐฉ์์์ ํ์์๋ ์ฝ๋๋ ๋นผ๊ณ ๋ค์ ํผ ๋ฐฉ๋ฒ