태그
프로그래머스
programmers
프로그래머스 가장 가까운 같은 글자
프로그래머스 js 가장 가까운 같은 글자
가장 가까운 같은 글자
js 가장 가까운 같은 글자
javascript 가장 가까운 같은 글자
자바스크립트 가장 가까운 같은 글자
파이썬 가장 가까운 같은 글자
자바 가장 가까운 같은 글자
문자열 s
가 주어졌을 때, s의 각 위치마다 자신보다 앞에 나왔으면서, 자신과 가장 가까운 곳에 있는 같은 글자가 어디 있는지 알고 싶습니다.
예를 들어, s
="banana"라고 할 때, 각 글자들을 왼쪽부터 오른쪽으로 읽어 나가면서 다음과 같이 진행할 수 있습니다.
따라서 최종 결과물은 [-1, -1, -1, 2, 2, 2]가 됩니다.
문자열 s
이 주어질 때, 위와 같이 정의된 연산을 수행하는 함수 solution을 완성해주세요.
function solution(s) { let answer = []; for(let i=0; i<s.length; i++) { // 처음나온 스펠링을 구분하기위해 사용 let existSpelling = false; // 같은 스펠링중 가장 가까운 스펠링의 index let prevSpellingIndex = 0; for(let j=0; j<i; j++) { // i 번째 스펠링이 전체 단어에 들어있다면 if(s[i] === s[j]) { existSpelling = true; prevSpellingIndex = j; } } // i 번째 스펠링이 처음 나온것이라면 -1 if(!existSpelling) answer.push(-1) // 처음 나온 스펠링이 아니라면 가장 가까운 이전 스펠링 index 저장 else answer.push(i - prevSpellingIndex) } return answer; }
태그
프로그래머스
programmers
프로그래머스 가장 가까운 같은 글자
프로그래머스 js 가장 가까운 같은 글자
가장 가까운 같은 글자
js 가장 가까운 같은 글자
javascript 가장 가까운 같은 글자
자바스크립트 가장 가까운 같은 글자
파이썬 가장 가까운 같은 글자
자바 가장 가까운 같은 글자