반응형
인덱스 바꾸기
문제 설명
문자열 my_string과 정수 num1, num2가 매개변수로 주어질 때, my_string에서 인덱스 num1과 인덱스 num2에 해당하는 문자를 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요.
제한사항
- 1 < my_string의 길이 < 100
- 0 ≤ num1, num2 < my_string의 길이
- my_string은 소문자로 이루어져 있습니다.
- num1 ≠ num2
입출력 예my_stringnum1num2result
"hello" | 1 | 2 | "hlelo" |
"I love you" | 3 | 6 | "I l veoyou" |
입출력 예 설명
입출력 예 #1
- "hello"의 1번째 인덱스인 "e"와 2번째 인덱스인 "l"을 바꾸면 "hlelo"입니다.
입출력 예 #2
- "I love you"의 3번째 인덱스 "o"와 " "(공백)을 바꾸면 "I l veoyou"입니다.
function solution(my_string, num1, num2) {
var answer = '';
let arr = [];
for(let i = 0; i < my_string.length; i++) {
if (i === num1) arr.push(my_string[num2]);
else if (i === num2) arr.push(my_string[num1]);
else arr.push(my_string[i]);
}
answer = arr.join("")
return answer;
}
console.log(solution("hello", 1, 2)); // hlelo
console.log(solution("I love you", 3, 6)); // I l veoyou
다른사람의 풀이
function solution(my_string, num1, num2) {
my_string = my_string.split('');
[my_string[num1], my_string[num2]] = [my_string[num2], my_string[num1]];
return my_string.join('');
}
ES6문법인, 구조 분해 문법( Destructuring )을 활용한 내용이라고 합니다. 나중에 제대로 확인해 봐야겠습니다.
반응형
'JavaScript | TypeScript > Javascript 코딩테스트' 카테고리의 다른 글
[ Javascript ] 코딩테스트 1단계 ( 푸드 파이트 대회 ) (0) | 2023.01.28 |
---|---|
[ Javascript ] 코딩테스트 1단계 ( 음양 더하기 ) (0) | 2023.01.27 |
[ Javascript ] 코딩테스트 연습 ( 한 번만 등장한 문자 ) (1) | 2023.01.25 |
[ Javascript ] 코딩테스트 연습 ( 약수 구하기 ) (0) | 2023.01.24 |
[ Javascript ] 코딩테스트 1단계 ( 명예의 전당 (1) ) (0) | 2023.01.24 |