프라이D 2022. 2. 1. 20:45

문제

알파벳 대문자로 이루어진 문자열을 입력받아 같은 문자가 연속으로 반복되는경우 반복되는 문자 바로 오른쪽에 반복 횟수를 표기하는 방법으로 문자열을 압축하여 출력하세요!

풀이

function solution(s) {
        let answer = '';
        let cnt = 1;
        for (let i = 0; i < s.length; i++) {
          if (s[i] === s[i - 1]) {
            cnt++;
          } else {
            if (cnt > 1) answer += String(cnt);
            answer += s[i];
            cnt = 1;
          }
        }

        return answer;
      }

      let str = 'KKHSSSSSSSE';
      console.log(solution(str));
      //K2HS7E