用哈希表做的,但是之前没考虑到数字是k/2的情况
这么用if主要是剪枝,减少判断
class Solution:
def maxOperations(self, nums: List[int], k: int) -> int:
hashmap = {}
maxnum = 0
for i in range(len(nums)):
if nums[i] in hashmap and 2*nums[i]!=k:
hashmap[nums[i]] += 1
else:
if k - nums[i] in hashmap:
if hashmap[k-nums[i]] == 1:
del hashmap[k-nums[i]]
else:
hashmap[k-nums[i]] -= 1
maxnum += 1
else:
hashmap[nums[i]] = 1
return maxnum