Advertisement
Guest User

Untitled

a guest
Feb 17th, 2020
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.19 KB | None | 0 0
  1. class Solution:
  2. def threeSum(self, nums: List[int]) -> List[List[int]]:
  3. solnSet = []
  4. finalSet = []
  5. for i in range(len(nums)):
  6. target = 0 - nums[i]
  7. #solnSet = self.twoSum([nums[i]], nums[:i] + nums[i+1:], target)
  8. solnSet = self.twoSum([nums[i]], nums[i+1:], target)
  9. #print("solnSet", solnSet)
  10. for j in solnSet:
  11. finalSet.append(j)
  12.  
  13.  
  14. #print("finalSet")
  15. #print(finalSet)
  16.  
  17. mySet = set(tuple(sorted(l)) for l in finalSet)
  18. finalList = []
  19. for i in mySet:
  20. finalList.append(list(i))
  21. return finalList
  22.  
  23. def twoSum(self, firstEleList: List[int], TSnums: List[int], target: int) -> List[int]:
  24. #return empty [] if no twoSum
  25. myTSDict={}
  26. twoSumList = []
  27.  
  28. for i in TSnums:
  29. if i in myTSDict:
  30. twoSumList.append(firstEleList + [myTSDict[i], i])
  31. #print(twoSumList)
  32. else:
  33. myTSDict[target-i] = i
  34.  
  35. #print(twoSumList)
  36. return twoSumList
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement