문자열 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
의 길이
my_string | overwrite_string | s | result |
---|---|---|---|
"He11oWor1d" | "lloWorl" | 2 | "HelloWorld" |
"Program29b8UYP" | "merS123" | 7 | "ProgrammerS123" |
function solution(my_string, overwrite_string, s) {
const myArray = my_string.split('');
let j = 0; // overwrite_string의 index
for (let i = s; i < my_string.length; i++) {
// overwrite_string의 끝 지점 까지 덮어쓰기해야 하기 때문
if(j < overwrite_string.length){
myArray[i] = overwrite_string[j];
}
j++; // 다음 index를 덮어쓰기 하기 위해
}
// 배열값을 join하여 문자열로 바꿈
const answer = myArray.join("");
return answer;
}
이해하면 쉬운데, if문의 조건에서 엄청 버벅였다..
오랜만에 하는 것도 있지만, 알고리즘은 일하면서 접할 일이 없다보니 솔직히 쉽지 않았다.
매일매일 하다보면 언젠간 실력이 향상될 거라고 믿으며, 오늘도 현타를 채워가는 중..