力扣1546.和为目标值且不重叠的非空子数组的最大数目
-
从头开始找 找到满足条件的就清空哈希表
-
class Solution {public:int maxNonOverlapping(vector<int>& nums, int target) {int n = nums.size();vector<int> s(n+1);for(int i=0;i<n;i++) s[i+1] = s[i] + nums[i];unordered_map<int,int> cnt;int res=0;for(int sj:s){if(cnt.find(sj - target) != cnt.end()){res ++;cnt = unordered_map<int,int> {};}cnt[sj] ++;}return res;}};