给你一个整数数组 nums 和一个整数 k 。
每一步操作中,你需要从数组中选出和为 k 的两个整数,并将它们移出数组。
返回你可以对数组执行的最大操作数。
解题思路:
排序后找大的加小的符合要求,计数,移动指针
class Solution(object):
def maxOperations(self, nums, k):
res = 0
nums.sort()
left, right = 0, len(nums)-1
while left < right:
if nums[left] + nums[right] > k:
right -= 1
elif nums[left] + nums[right] < k:
left += 1
else:
left += 1
right -= 1
res += 1
return res