您的位置:首页 > 娱乐 > 八卦 > 力扣1371.每个元音包含偶数次的最长子字符串

力扣1371.每个元音包含偶数次的最长子字符串

2024/10/6 10:28:05 来源:https://blog.csdn.net/Pisasama/article/details/141558214  浏览:    关键词:力扣1371.每个元音包含偶数次的最长子字符串

力扣1371.每个元音包含偶数次的最长子字符串

  • 状态压缩 + 前缀和

    • 用一个二进制的五位数存每种元音字母的出现次数
    • 同时记录每种情况第一次出现的下标
  •   class Solution {public:int findTheLongestSubstring(string s) {vector<int> pre(32,INT_MAX);pre[0] = -1;int n = s.size();int cur = 0,ans = 0;for(int i=0;i<n;i++){if(s[i] == 'a')cur ^= 1 << 0;else if(s[i] == 'e')cur ^= 1 << 1;else if(s[i] == 'i')cur ^= 1 << 2;else if(s[i] == 'o')cur ^= 1 << 3;else if(s[i] == 'u')cur ^= 1 << 4;if(pre[cur] == INT_MAX) pre[cur] = i;else ans = max(ans,i - pre[cur]);}return ans;}};
    

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com