Skip to content

Commit b409b6a

Browse files
author
김가은
committed
solve: 3sum
1 parent 3742f29 commit b409b6a

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

3sum/paran22.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
class Solution:
2+
# time complexity: O(n^2)
3+
def threeSum(self, nums: List[int]) -> List[List[int]]:
4+
nums.sort()
5+
answer = set()
6+
7+
for i in range(len(nums) - 2):
8+
if i > 0 and nums[i] == nums[i - 1]:
9+
continue
10+
11+
left, right = i + 1, len(nums) - 1
12+
while left < right:
13+
sum = nums[i] + nums[left] + nums[right]
14+
if sum == 0:
15+
answer.add((nums[i], nums[left], nums[right]))
16+
left += 1
17+
right -= 1
18+
elif sum > 0:
19+
right -= 1
20+
elif sum < 0:
21+
left += 1
22+
23+
return [list(x) for x in answer]
24+
25+
26+
27+

0 commit comments

Comments
 (0)