Skip to content

Latest commit

 

History

History
162 lines (112 loc) · 2.71 KB

File metadata and controls

162 lines (112 loc) · 2.71 KB

中文文档

Description

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

Return the power of the string.

 

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.

Example 3:

Input: s = "triplepillooooow"

Output: 5

Example 4:

Input: s = "hooraaaaaaaaaaay"

Output: 11

Example 5:

Input: s = "tourist"

Output: 1

 

Constraints:

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

Solutions

Python3

class Solution:
    def maxPower(self, s: str) -> int:
        ans = t = 0
        for i, c in enumerate(s):
            if i == 0 or c == s[i - 1]:
                t += 1
            else:
                t = 1
            ans = max(ans, t)
        return ans

Java

class Solution {
    public int maxPower(String s) {
        int ans = 0, t = 0;
        for (int i = 0; i < s.length(); ++i) {
            if (i == 0 || s.charAt(i) == s.charAt(i - 1)) {
                ++t;
            } else {
                t = 1;
            }
            ans = Math.max(ans, t);
        }
        return ans;
    }
}

C++

class Solution {
public:
    int maxPower(string s) {
        int ans = 0, t = 0;
        for (int i = 0; i < s.size(); ++i)
        {
            if (i == 0 || s[i] == s[i - 1]) ++t;
            else t = 1;
            ans = max(ans, t);
        }
        return ans;
    }
};

Go

func maxPower(s string) int {
	ans, t := 0, 0
	for i := range s {
		if i == 0 || s[i] == s[i-1] {
			t++
		} else {
			t = 1
		}
		ans = max(ans, t)
	}
	return ans
}

func max(a, b int) int {
	if a > b {
		return a
	}
	return b
}

...