[Algorithm] 문자열 압축 (javaScript)

swing·2023년 6월 28일
0

[Algorithm]

목록 보기
52/96

문제

알파벳 대문자로 이루어진 문자열을 입력받아 같은 문자가 연속으로 반복되는 경우 반복되는 문자 바로 오른쪽에 반복 횟수를 표기하는 방법으로 문자열을 압축하는 프로그램을 작성하시오. 단 반복횟수가 1인 경우 생략합니다.

입력설명

첫 줄에 문자열이 주어진다. 문자열의 길이는 100을 넘지 않는다.

출력설명

첫 줄에 압축된 문자열을 출력한다.

입출력예제

입력 : KKHSSSSSSSE
출력 : K2HS7E

문제 해결

const solution = (input) => {
  let S = input[0];
  let cnt = 1;
  let answer = `${S}`;

  for (let i = 1; i < input.length; i++) {
    if (input[i] === S) {
      cnt++;
    } else {
      cnt === 1 ? null : (answer += cnt);
      S = input[i];
      answer += S;
      cnt = 1;
    }
  }
  return answer;
};

const a = solution("KKHSSSSSSSE");

console.log(a); // K2HS7E
profile
if(기록📝) 성장🌱

0개의 댓글

관련 채용 정보