[go: up one dir, main page]

DEV Community

Abhishek Chaudhary
Abhishek Chaudhary

Posted on

Consecutive Characters

The power of the string is the maximum length of a non-empty substring that contains only one unique character.

Given a string s, return the power of s.

Example 1:

Input: s = "leetcode"
Output: 2
Explanation: The substring "ee" is of length 2 with the character 'e' only.

Example 2:

Input: s = "abbcccddddeeeeedcba"
Output: 5
Explanation: The substring "eeeee" is of length 5 with the character 'e' only.

Constraints:

  • 1 <= s.length <= 500
  • s consists of only lowercase English letters.

SOLUTION:

class Solution:
    def maxPower(self, s: str) -> int:
        s += "0"
        maxCtr = [0] * 26
        curr = [0] * 26
        for c in s:
            for i in range(26):
                maxCtr[i] = max(maxCtr[i], curr[i])
            if c != "0":
                tmp = curr[ord(c) - ord('a')]
                curr = [0] * 26
                curr[ord(c) - ord('a')] = tmp
                curr[ord(c) - ord('a')] += 1
        return max(maxCtr)
Enter fullscreen mode Exit fullscreen mode

Top comments (0)