문제
한 개의 문자열 s와 문자 t가 주어지면 s의 각 문자가 s 내의 t와 떨어진 최소거리를 각각 출력하세요!
풀이
function solution(s, t) {
let answer = [];
let e = 1000;
//정방향 탐색
for (let x of s) {
if (x === t) {
e = 0;
answer.push(0);
} else {
e++;
answer.push(e);
}
}
e = 1000;
//역방향 탐색
for (let i = s.length - 1; i >= 0; i--) {
if (s[i] === t) e = 0;
else {
e++;
answer[i] = Math.min(answer[i], e);
}
}
return answer;
}
let str = 'teachermode';
console.log(solution(str, 'e'));
'Algorithm & 자료구조 > (인프런) 자바스크립트 알고리즘 문제풀이' 카테고리의 다른 글
[알고리즘]자릿수의 합 (0) | 2022.02.01 |
---|---|
[알고리즘]문자열 압축 (0) | 2022.02.01 |
[알고리즘]숫자만 추출하기 (0) | 2022.01.31 |
[알고리즘]2차원 배열의 사방 탐색 (0) | 2022.01.31 |
[알고리즘]격자판 최대 합 구하기 (0) | 2022.01.30 |