每日一题 【每日一题】抽搐词 -Python-20211016

Jack · 2021年10月16日 · 最后由 Jack 回复于 2021年10月17日 · 38 次阅读
本帖已被设为精华帖!
  1. 问题描述: 正常单词不会连续 2 个以上相同的字母,如果出现连续 3 个以上的字母,那么这是一个抽搐词。 给出该单词,从左到有求出所有抽搐字母的起始点和结束点。
  2. 问题示例: 输入: str= "whaaaaatttsup" 输出: [[2, 6], [7, 9]]
Jack 将本帖设为了精华贴 10月16日 21:01

参考代码:

class Solution:
    def twitchWords(self, str):
        n = len(str)
        c = str[0]
        left = 0
        ans = []
        for i in range(n):
            if str[i] != c:
                if i - left >= 3:
                    ans.append(left, i -1)
                c = str[i]
                left = i
        if n - left >= 3:
            ans.append([left, n - 1])
        return ans
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册