26 lines
682 B
Python
26 lines
682 B
Python
from typing import List
|
|
|
|
|
|
class Solution:
|
|
def twoSum(self, nums: List[int], target: int) -> List[int]:
|
|
for i in range(0, len(nums)):
|
|
for j in range(i + 1, len(nums)):
|
|
if nums[i] + nums[j] == target:
|
|
return [i, j]
|
|
|
|
|
|
class NeetCodeSolution:
|
|
def twoSum(self, nums: List[int], target: int) -> List[int]:
|
|
prevMap = {} # val -> index
|
|
|
|
for i, n in enumerate(nums):
|
|
diff = target - n
|
|
if diff in prevMap:
|
|
return [prevMap[diff], i]
|
|
prevMap[n] = i
|
|
|
|
|
|
s = Solution()
|
|
print(s.twoSum([3, 4, 5, 6, 7], 7))
|
|
print(s.twoSum([4, 5, 6], 10))
|
|
print(s.twoSum([5, 5], 10))
|