Untitled
unknown
plain_text
9 months ago
562 B
5
Indexable
class Solution {
public:
int maxLen(vector<int>& arr) {
int n=arr.size();
int prefixSum=0;
int ans=0;
map<int,int>prefixMp;
prefixMp[0]=-1;
for(int i=0;i<n;i++){
prefixSum+=arr[i];
if(prefixMp.find(prefixSum)!=prefixMp.end())
{
int idx=prefixMp[prefixSum];
int windowSize=(i-idx);
ans=max(ans,windowSize);
}else{
prefixMp[prefixSum]=i;
}
}
return ans;
}
};Editor is loading...
Leave a Comment