본문 바로가기
JavaScript/Programmers 코테

[프로그래머스][코테][JavaScript] 문자열 겹쳐쓰기 [JS기초]

by 띵코딩 2023. 8. 25.

코딩테스트 연습 - 문자열 겹쳐쓰기 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

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

programmers.co.kr

 

문제 설명

문자열 my_string, overwrite_string 과 정수 s가 주어집니다. 문자열 my_string 의 인덱스 s부터 overwrite_string 의 길이만큼을 문자열 overwrite_string 으로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요.

 

 

제한 사항
  • my_string 와 overwrite_string은 숫자와 알파벳으로 이루어져 있습니다.
  • 1 <= overwrite_string 의 길이 <= my_string 의 길이 <= 1,000
  • 0 <= s <= my_string의 길이 - overwrite_string 의 길이

 

입출력 예

 

입출력 예 설명

 

 

문제 풀이

 

function solution(my_string, overwrite_string, s) {
    let str = [];
    str = my_string.split("")
    str.splice(s, overwrite_string.length, overwrite_string)
    return str.join("")
}

 

풀이 설명

※ 배열에서 기존 요소를 삭제, 교체 또는 새 요소를 추가하는 splice() 메소드를 사용하여 쉽게 문제 해결을 하였습니다.

array.splice( 배열 시작점, 삭제 요소의 수, 배열에 추가할 요소, 추가할 요소, 추가할 요소, ....) 
배열 시작점에서 삭제 요소의 수만큼 삭제 후, 배열 시작점에 추가할 요소를 넣어준다.


ex) var alpha = ["a", "b", "c", "d"]
      alpha.splice(1, 2, "ab",  "abc") 
      console.log(alpha);  // ["a", "ab", "abc", "d"]