把数字与字母的差值存在哈希表
class Solution {
public:
vector<string> findLongestSubarray(vector<string>& array) {
int n = array.size();
vector<int> s(n+1);
for(int i=0;i<n;i++)
s[i + 1] = s[i] + (array[i][0] >> 6 & 1) * 2 - 1;
unordered_map<int,int> cnt;
int l=0,r=0;
for(int i=0;i<=n;i++)
{
if(cnt.find(s[i]) != cnt.end() && r - l < i - cnt[s[i]])
l = cnt[s[i]] , r = i;
else if(cnt.find(s[i]) == cnt.end())
cnt[s[i]] = i;
}
return {array.begin() + l, array.begin() + r};
}
};