강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

highJoon님의 프로필 이미지
highJoon

작성한 질문수

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

4. 문자거리

p를 1000으로 잡고 시작하신 이유가 있을까요?

작성

·

242

1

function solution(s, t) {
            let answer = [];
            let cnt = 0;
            let n = s.length;

            for (let i = 0; i < n; i++{
                if (s[i=== 'e'cnt = 0;
                else cnt++;
                answer.push(cnt);
            };

            for (let i = n - 1; i >= 0; i--{
                if (s[i=== 'e'cnt = 0
                else cnt++;
                if (answer[i> cnt{
                    answer[i= cnt
                }
            };

            return answer;
        }

        let str = "teachermode";
        console.log(solution(str, 'e'));

안녕하세요 강사님! 제가 작성한 코드입니다.

p를 1000으로 초기화하고 시작하는건 생각도 못했네요 ㅜㅜ

혹시 그렇게 하신 이유가 있을까요?

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

teachermode의 t같은 경우 자신의 왼쪽에 타겟문자인 'e'문자가 없으니 왼쪽타겟문자와의 거리를 큰 숫자로 정하여 오른쪽 타겟문자와이 거리가 채택되게 하려고 적당히 큰 숫자를 준 것입니다.

들어오는 문자열의 길이가 100이하이니 적당히 큰 숫자로 1000을 잡은 것입니다.

highJoon님의 프로필 이미지
highJoon
질문자

감사합니다! 

Number.MAX_SAFE_INTEGER 를 사용하시는 것과 비슷한 케이스라고 생각하면 될까요?

highJoon님의 프로필 이미지
highJoon

작성한 질문수

질문하기