티스토리 뷰

728x90
SMALL

function solution(s) {
    let min=s.length;
    for(let i=1;i<=s.length/2;i++){
        let arr=[];
        let copy=s;
        while(copy.length>0){
            arr.push(copy.substr(0,i));
            copy=copy.substr(i);
        }
        for(let j=1;j<arr.length;j++){
            if(arr[j]===arr[j-1]&&typeof arr[j-2]==="number"){
                arr[j-2]=arr[j-2]+1
                arr.splice(j,1);
                j--;
            }else if(arr[j]===arr[j-1]){
                arr[j-1]=2;
            }
        }
        if(arr.join('').length<min){
            min=arr.join('').length;
        }
    }
    return min
}

겨우풀었다... 복잡도같은건 생각하지 못했다

한번 테스트케이스는 되는데 100점이 안떠서 봤더니 number부분이 10,100처럼 2자리수 이상일때 생각을 못해서그렇다.

728x90
LIST
댓글
공지사항