개발로그필름

[프로그래머스/JS] 문자열 겹쳐쓰기 본문

coding test/프로그래머스

[프로그래머스/JS] 문자열 겹쳐쓰기

yuullog 2023. 11. 16. 15:43
728x90
반응형
SMALL

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

 

프로그래머스

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

programmers.co.kr

 

입출력 예시로 나오는 테스트는 계속 통과되는데 왜때문인건지 계속 테스트 하나가 실패로 떠서 

고민고민 끝에 결국 풀어냈다...!!!

바로 concat 함수를 쓰는 것

 

function solution(my_string, overwrite_string, s) {
    // 총 3가지 영역으로 나눠서 생각하자
    // 바꾸지 않는 문자열
    // 바꾼 문자열
    // 뒤에 남은 문자열
    
    const before = my_string.slice(0,s)  //2
    console.log(before)
    const after = my_string.slice(s+overwrite_string.length)
    console.log(after)
    return before.concat(overwrite_string).concat(after);
}

 

기존 문자열에서 제시된 문자열 부분을 바꾸는 문제이기 때문에

총 3가지로 나눠 생각을 해봤다

s 이전의 바뀌지 않는 문자열, 바꿔야 하는 문자열, 뒤에 남은 문자열.

s 이전의 바뀌지 않는 문자열은 0부터 s까지 slice로 나눠 before에 저장,

바꿔야 하는 문자열은 s+overwrite_string.length부터 slice 해서 after에 저장,

마지막으로 바꾸지 않는 문자열, 바꿔야하는 문자열, 나머지 문자열은 모두 concat으로 묶어서 return 해준다

배열 여러개를 합칠 수 있는 concat에 대해 새로 알게 된 코테 문제였다

 

반응형
LIST
Comments