题目描述
题目描述
题解
题解
提交记录
提交记录
中等

给你一个仅由字符 'a'、'b' 和 'c' 组成的字符串 s。

如果一个字符串不包含 "abc" 作为 子串 ,那么它被称为 有效的 。

返回 s 中 有效子串 的数量。起始或结束下标不同的子串分别计数。

子串 是字符串内连续的 非空 字符序列。

 

示例 1:

输入: s = "abac"

输出: 10

解释:

以下子串不包含 "abc" 作为子串:

  • s[0..0] = "a"
  • s[0..1] = "ab"
  • s[0..2] = "aba"
  • s[0..3] = "abac"
  • s[1..1] = "b"
  • s[1..2] = "ba"
  • s[1..3] = "bac"
  • s[2..2] = "a"
  • s[2..3] = "ac"
  • s[3..3] = "c"

因此,答案是 10。

示例 2:

输入: s = "abc"

输出: 5

解释:

以下子串不包含 "abc"​​​​​​​ 作为子串:

  • s[0..0] = "a"
  • s[0..1] = "ab"
  • s[1..1] = "b"
  • s[1..2] = "bc"
  • s[2..2] = "c"​​​​​​​

因此,答案是 5。

示例 3:

输入: s = "ac"

输出: 3

解释:

s 中的所有子串都不包含 "abc" 作为子串​​​​​​​。因此,答案是 3。

 

提示:

  • 1 <= s.length <= 105​​​​​​​
  • s 仅由字符 'a'、'b' 和 'c' 组成。
 
代码
代码
测试用例
测试用例
测试结果
测试结果