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)