原题链接:Leetcode 525. 连续数组
参考题解:525.连续数组 前缀和+哈希表 速解!
class Solution {
public:
int findMaxLength(vector<int>& nums) {
int n=nums.size();
unordered_map<int,int> mp;
mp[0]=-1;
int res=0,cur=0;
for(int i=0;i<n;i++)
{
nums[i]==1? cur++:cur--;
if(mp.count(cur)) res=max(res,i-mp[cur]);
else mp[cur]=i;
}
return res;
}
};