325. Maximum Size Subarray Sum Equals k - cocoder39/coco39_LC GitHub Wiki

325. Maximum Size Subarray Sum Equals k

int maxSubArrayLen(vector<int>& nums, int k) {
        int res = 0, sum = 0;
        unordered_map<int, int> mp;
        for (int i = 0; i < nums.size(); i++) {
            sum += nums[i];
            if (sum == k) {
                res = i + 1;
            } else {
                int target = sum - k;
                if (mp.find(target) != mp.end()) {
                    res = max(res, i - mp[target]);
                }
            }
            
            if (mp.find(sum) == mp.end()) { //store earliest sum that is equal to sums[i]
                mp[sum] = i;
            }
        }
        return res;
    }
⚠️ **GitHub.com Fallback** ⚠️