한 걸음씩
[프로그래머스][JS] 문자열 겹쳐쓰기 본문
https://school.programmers.co.kr/learn/courses/30/lessons/181943
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이 과정1
function solution(my_string, overwrite_string, s) {
const strArr = [...my_string]
// ['H', 'e', '1', '1','o', 'W', 'o', 'r','1', 'd']
// s번 인덱스에 overwrite_string.length길이만큼 제거하고 overwrite_string를 추가
strArr.splice(s, overwrite_string.length, overwrite_string)
// [ 'H', 'e', 'lloWorl', 'd' ]
// console.log(strArr.join('')) -> HelloWorld
return strArr.join('');
}
테스트 케이스 하나가 계속 통과가 안 돼서 결국 못 풀고 찾아봤는데
문자열을 배열로 변경하고 splice 메서드를 사용하는 방법을 쓰고
다시 문자열로 바꿔줬다
풀이 과정2
function solution(my_string, overwrite_string, s) {
var answer = '';
// my_string~s + overwrite_string + myString
const firstIdx = my_string.slice(0, s) + overwrite_string
const firstIdxLength = firstIdx.length
if (firstIdxLength < my_string.length){
const x = my_string.slice(my_string.length - (my_string.length - firstIdxLength))
answer = firstIdx + x
return answer
// console.log(answer)
}
return firstIdx;
}
리뷰
정답 코드를 보면 별게 아닌데 틀린 코드를 버리기가 아까워서 비슷한 메서드로 바꿔서 사용하다 보니
배열로 바꿔서 풀어볼 생각을 못한 것 같다
'Programmers' 카테고리의 다른 글
[프로그래머스][JS] 문자열 뒤집기 (0) | 2023.05.15 |
---|---|
[프로그래머스][JS] 콜라츠 수열 만들기 (0) | 2023.05.12 |
[프로그래머스][JS] 세로 읽기 (0) | 2023.05.11 |
[프로그래머스][JS] 문자열 돌리기 (0) | 2023.05.11 |
[프로그래머스][JS] 문자열 반복해서 출력하기 (0) | 2023.05.11 |