1446. 连续字符
难度 简单
给你一个字符串 s
,字符串的「能量」定义为:只包含一种字符的最长非空子字符串的长度。
请你返回字符串的能量。
示例 1:
输入:s = "leetcode" 输出:2 解释:子字符串 "ee" 长度为 2 ,只包含字符 'e' 。
示例 2:
输入:s = "abbcccddddeeeeedcba" 输出:5 解释:子字符串 "eeeee" 长度为 5 ,只包含字符 'e' 。
示例 3:
输入:s = "triplepillooooow" 输出:5
示例 4:
输入:s = "hooraaaaaaaaaaay" 输出:11
示例 5:
输入:s = "tourist" 输出:1
提示:
- 1 <= s.length <= 500
- s 只包含小写英文字母。
题解
简单题,直接看代码吧
class Solution { public int maxPower(String s) { int power =1; int maxPower=1; char[] chars=s.toCharArray(); for (int i = 1; i < chars.length; i++) { if(chars[i]==chars[i-1]){ power++; if (power>maxPower){ maxPower=power; } }else { power=1; } } return maxPower; } }
官方
基本一样
class Solution { public int maxPower(String s) { int ans = 1, cnt = 1; for (int i = 1; i < s.length(); ++i) { if (s.charAt(i) == s.charAt(i - 1)) { ++cnt; ans = Math.max(ans, cnt); } else { cnt = 1; } } return ans; } }