문자열의 거듭제곱은 고유한 문자가 하나만 포함된 비어 있지 않은 부분 문자열의 최대 길이입니다.
문자열을 받아서 그 힘을 반환하는 JavaScript 함수를 작성해야 합니다.
예를 들어 -
const str = "abbcccddddeeeeedcba"
그러면 출력은 5가 되어야 합니다.
하위 문자열 "eeeee"의 길이가 5이고 문자 'e'만 있기 때문입니다.
예시
이에 대한 코드는 -
const str = "abbcccddddeeeeedcba"
const maxPower = (str = '') => {
let power = 1
const sz = str.length - 1
for(let i = 0; i < sz; ++i) {
let count = 1
while(i < sz && str[i + 1] === str[i] && ++i)
power = Math.max(power, ++count)
}
return power
};
console.log(maxPower(str)); 출력
콘솔의 출력은 -
5