https://school.programmers.co.kr/learn/courses/30/lessons/142086
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
접근방법
1. s.substr(0,i)를 사용하여 0번부터 현재 i번째 바로 전까지의 문자열을 가져온다.
2. lastIndexof(s[i])를 사용해, s[i]가 해당 부분 문자열에서 가장 마지막에 나타난 위치를 찾는다.
3. -1인 경우(존재하지 않는경우) 그대로 -1을 리턴하고, 그렇지 않은 경우 뒤에서부터 거리를 계산하여 return 한다.
제출
function solution(s) {
var answer = [];
for(let i = 0; i < s.length ; i ++){
let temp = s.substr(0,i).lastIndexOf(s[i])
if(temp === -1){
answer.push(temp)
}else{
answer.push(s.substr(0,i).length - temp)
}
}
return answer;
}
결과 :100점
'프로그래머스' 카테고리의 다른 글
[프로그래머스] 명예의 전당(1) (0) | 2024.12.10 |
---|---|
[프로그래머스] 문자열 나누기 (0) | 2024.12.09 |
[프로그래머스] 크기가 작은 부분 문자열 (0) | 2024.12.07 |
[프로그래머스] 둘만의 암호 (0) | 2024.12.06 |
[프로그래머스] 카드 뭉치 (0) | 2024.12.05 |