給定一個數組和整數k
如果某個子數組中恰好有k個奇數數字,認為該數組為優美子數組
傳回優美子數組的個數
同樣是利用哈希表解決
from collections import defaultdict
class Solution:
def numberOfSubarrays(self, nums: List[int], k: int) -> int:
cnt=defaultdict(int)
cnt[0]=1
odd_num,res=0,0
for i,val in enumerate(nums):
if val%2==1:
odd_num+=1
cnt[odd_num]+=1
if odd_num>=k:
res+=cnt[odd_num-k]
return res