link:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台
class Solution {
public:
int findTheLongestSubstring(string s) {
vector<int> status(32,INT_MAX);
status[0]=-1;
int n = s.size();
int cur = 0;
int ans = 0;
for (int i=0;i<n;i++) {
switch(s[i]){
case 'a':cur^=1;break;
case 'e':cur^=2;break;
case 'i':cur^=4;break;
case 'o':cur^=8;break;
case 'u':cur^=16;break;
default:break;
}
if(status[cur]==INT_MAX) status[cur]=i;
else ans = max(ans,i-status[cur]);
}
return ans;
}
};