Lv.1 : 가장 가까운 같은 글자 [JavaScript]

2024. 9. 1. 12:13Algorithm/프로그래머스

반응형

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

 

프로그래머스

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

programmers.co.kr


문제 풀이

function solution(s) {
    var answer = [];
    
    for(var i=0; i<s.length; i++){
        var idx = s.slice(0, i).lastIndexOf(s[i]);
        answer.push(idx == -1 ? idx : i - idx);
    }
    
    return answer;
}

s를 돌면서 s[i] 앞부분을 잘라 그 문자열에서 s[i]의 lastIndex를 찾는다 (=idx)

idx가 -1이면 글자가 없다는 말이므로 answer에 -1을 push

idx가 -1이 아니면 s[i]로부터 idx와 떨어진 거리 (i - idx)를 구하여 push

 

 

반응형