我写的:超时

class Solution {public:int numberOfSubstrings(string s) {int res = 0;for(int i = 0; i < s.size();i++){bool flag[3] = {0};for(int j = i; j < s.size(); j++){if(s[j] == 'a')flag[0] = true;else if(s[j] == 'b')flag[1] = true;else if(s[j] == 'c')flag[2] = true;if(flag[0] && flag[1] && flag[2]){res += s.size() - j;break;}}}return res;}
};

看了第一名的之后:


https://leetcode-cn.com/contest/biweekly-contest-20/ranking/

class Solution {public:int numberOfSubstrings(string s) {int res = 0;int cnt[5] = {0};int right = 0;for(int i = 0; i < s.size();i++){while((cnt[0] == 0 || cnt[1] == 0 || cnt[2] == 0) && right < s.size()){cnt[s[right++] - 'a']++;}if(cnt[0] > 0 && cnt[1] > 0 && cnt[2] > 0){res += s.size() - right+1;}cnt[s[i]-'a']--;}return res;}
};

[leetcode]5325. 包含所有三种字符的子字符串数目相关推荐

  1. 【LeetCode】剑指 Offer 48. 最长不含重复字符的子字符串

    [LeetCode]剑指 Offer 48. 最长不含重复字符的子字符串 文章目录 [LeetCode]剑指 Offer 48. 最长不含重复字符的子字符串 package offer;import ...

  2. 最长不含重复字符的子字符串

    请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 " ...

  3. Swift3.0语言教程查找字符集和子字符串

    Swift3.0语言教程查找字符集和子字符串 Swift3.0语言教程查找字符集和子字符串,在字符串中当字符内容很多时,我们就需要使用到查找字符集或者子字符串的方法.以下我们将讲解3种查找字符集和子字 ...

  4. 【剑指offer】最长不含重复字符的子字符串

    题目: * 面试题48:请从字符串中找出一个最长的不包含重复字符的子字符串, * 计算该最长子字符串的长度.假设字符串中只包含从'a'到'z'的字符. * 例如,在字符串中'arabcacfr',最长 ...

  5. 【剑指offer】面试题48. 最长不含重复字符的子字符串(java)

    请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度. 示例 1: 输入: "abcabcbb" 输出: 3  解释: 因为无重复字符的最长子串是 &quo ...

  6. 字符串左侧补0_(48)C++面试之最长不含重复字符的子字符串(动态规划)

    // 面试题48:最长不含重复字符的子字符串 // 题目:请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子 // 字符串的长度.假设字符串中只包含从'a'到'z'的字符. #inclu ...

  7. 【算法】剑指 Offer 48. 最长不含重复字符的子字符串

    1.概述 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 ...

  8. 剑指offer48-最长不含重复字符的子字符串(双指针经典)

    问题描述 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 ...

  9. 剑指offer面试题48. 最长不含重复字符的子字符串(滑动窗口)

    题目描述 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度. 思路 详见链接 代码 class Solution:def lengthOfLongestSubstring( ...

最新文章

  1. synchronized底层原理_你用过synchronized吗?它的底层原理是什么?Java经典面试题来了...
  2. mysql导出csv数据_mysql 导出 csv数据命令
  3. 实现线程安全的单例模式
  4. 基于Pytorch再次解析使用块的现代卷积神经网络(VGG)
  5. Spring5源码 - 09 循环依赖解读
  6. 基于springboot 改造 open-shop小程序商城
  7. 通过IP地址和子网掩码,如何计算出网络地址、广播地址和主机数?
  8. 手把手教你实现echarts3的折线图下钻drilldown功能系列篇二
  9. Powerdesigner概念模型并将概念模型转换成物理模型
  10. win10小课堂:如何彻底关闭windows defender
  11. 南京大学计算机科学专硕培养方案,计算机科学与技术专业硕士研究生培养方案(2014版)...
  12. 2000 Followers-3D CSS text
  13. 3G杀手应用还是全方位轰炸?
  14. cuda、Nvidia driver、GCC版本对应关系
  15. 全国计算机图书销售订单记录,销售订单管理信息系统.doc
  16. 深入理解CSS margin折叠
  17. 牛客小白月赛23(A、B
  18. 写给那些搜了很多教程安装win10但老是提示报错的童鞋
  19. 比Everything还好用的搜索软件 - listary
  20. 低成本盈利的重要项目你知道哪7个吗?适合新手上手容易

热门文章

  1. python和java选择哪个-JAVA和Python哪个好就业?
  2. python自学看什么书-如何自学Python ?自学看什么书比较好?
  3. 为何python不好找工作-Python培训班出来找工作容易吗?老男孩教育
  4. 【原创】3大主流的移动应用方式APP开发姿势解读
  5. Vue2.0 $set()处理数据更新但视图不更新的问题(给对象添加属性必须用this.$set(this.data,”key”,value’))
  6. 项目本地发布到github并且上线可预览
  7. PYTHON笔记 面向对象程序设计
  8. python笔记:random模块中的函数
  9. [总结]RTMP流媒体技术零基础学习方法
  10. IPTV监测和测试设备