코딩테스트/Programmers (프로그래머스)
[프로그래머스] 이상한 문자 만들기 - Javascript (Lv.1)
지윤공원🌳
2021. 4. 12. 20:53
728x90
📖 문제 설명
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.
✔️ 제한조건
- 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.
- 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다.
s | return |
"try hello world" | "TrY HeLlO WoRlD" |
💻 나의 코드
function solution(s) {
var answer = '';
let arr = s.split(' ');
for(let a of arr){
for(let j=0; j<a.length; j++){
if(j % 2 == 0){
answer += a[j].toUpperCase();
}else{
answer += a[j].toLowerCase();
}
}
answer += " ";
}
return answer.slice(0, answer.length-1);
}
🎤 코드 설명
- 입력받은 문자열 s를 split('')함수를 통해 배열로 만듭니다.
- 배열에서 요소를 하나씩 꺼내서 반복을 합니다. 이때, 요소(단어) 하나마다 또 반복을 수행합니다. (이중 반복문)
- j의 값에 따라 짝수면 toUpperCase(), 홀수면 toLowerCase()를 통해 대소문자를 바꾸고 answer에 추가합니다.
- 단어 사이마다 " "(공백)을 추가해줍니다.
- answer의 맨 뒤 한 칸을 자른 뒤에 return 해줍니다. (맨 뒤에 공백이 추가되어 있기 때문)
📜 채점 결과
정확성: 100.0
합계: 100.0 / 100.0
💬 배운 것
- toUpperCase()와 toLowerCase()를 활용하면서 사용법을 익혔습니다.
- slice()함수를 사용해서 간편하게 answer를 구했습니다.
코딩테스트 연습 - 이상한 문자 만들기
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을
programmers.co.kr
728x90