본문 바로가기
Coding Test/Programmers

[Programmers] (2020 KAKAO BLIND RECRUITMENT) Lv 2. 문자열 압축

by song.ift 2023. 3. 26.

https://school.programmers.co.kr/learn/courses/30/lessons/60057

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

function solution(s) {
    let answer = s.length;

    for (let i = 1; i <= Math.floor(s.length / 2); ++i) {
        let [str, word, idx, cnt] = ["", "", 0, 1];

        while (idx < s.length) {
            const temp = s.substr(idx, i);
            idx += i;

            if (temp === word) ++cnt;
            else {
                str += `${(cnt > 1 ? cnt : "")}${word}`;
                (cnt = 1), (word = temp);

                if (idx >= s.length) str += temp;
            }
        }

        if (cnt > 1) str += `${cnt}${word}`;
        answer = Math.min(str.length, answer);
    }
    return answer;
}

GitHub : https://github.com/developeSHG/Algorithm-Baekjoon_Programmers/tree/main/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4/lv2/60057.%E2%80%85%EB%AC%B8%EC%9E%90%EC%97%B4%E2%80%85%EC%95%95%EC%B6%95

 

GitHub - developeSHG/Algorithm-Baekjoon_Programmers: 백준 and 프로그래머스 소스코드

백준 and 프로그래머스 소스코드. Contribute to developeSHG/Algorithm-Baekjoon_Programmers development by creating an account on GitHub.

github.com

 

댓글