## The challenge

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 = "meetme"
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.

## The solution in Java code

We could look at something like this:

 `````` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 `````` ``````class Solution { public int maxPower(String s) { int max = 1; for(int i=0,j=1; j

But in cases like `eeeee`, we would expect a return of `5`, but would instead get `1` back.

So let’s revisit:

 `````` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 `````` ``````class Solution { public int maxPower(String s) { int max = 1; int cnt = 1; char prv = s.charAt( 0 ); for( int i = 1; i < s.length(); i++) { if( prv == s.charAt( i ) ) { max = Math.max( ++cnt, max ); continue; } prv = s.charAt( i ); cnt = 1; } return max; } } ``````

A possible third option would be to do something like this:

 `````` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 `````` ``````class Solution { public int maxPower(String s) { int max=1; for(int i=1; i