문자열 s가 입력되었을 때 다음 규칙을 따라서 이 문자열을 여러 문자열로 분해하려고 합니다.
문자열 s가 매개변수로 주어질 때, 위 과정과 같이 문자열들로 분해하고, 분해한 문자열의 개수를 return 하는 함수 solution을 완성하세요.
입출력 예 #1
s="banana"인 경우 ba - na - na와 같이 분해됩니다.
입출력 예 #2
s="abracadabra"인 경우 ab - ra - ca - da - br - a와 같이 분해됩니다.
입출력 예 #3
s="aaabbaccccabba"인 경우 aaabbacc - ccab - ba와 같이 분해됩니다.
function solution(s) {
// 처음에 시작하는 x를 s[0]으로 지정해줬다
let x = s[0]
let xCount = 0
let notxCount = 0
let count = 1;
for(let i=0; i<s.length; i++){
// x일떈 xCount++ 아닐땐 notxCount++
if(x === s[i]){
xCount++;
}else if(x !== s[i]){
notxCount++;
}
// xCount === notxCount 같아지면
if (xCount === notxCount && i + 1 < s.length) {
x = s[i + 1]; // x 초기화
xCount = 0; // xcount 초기화
notxCount = 0; // notxCount 초기화
count++;
}
}
return count
}