1679. Max Number of K-Sum Pairs
先排序(小→大)
左右指針
如果相等,result ++
如果大於,右指針往左(這樣才會變小)
如果小於,左指針往右
class Solution:
def maxOperations(self, nums: List[int], k: int) -> int:
result = 0
l, r = 0, len(nums)-1
nums.sort()
while l < r:
if nums[l]+nums[r]==k:
result += 1
l += 1
r -= 1
elif nums[l]+nums[r]>k:
r -= 1
else:
l += 1
return result
time complexity: O(nlogn) 因為排序
space complexity: O(1)