공부/코딩테스트

Q. 이상한 문자 만들기

뀨뿌뀨뿌 2023. 6. 19. 14:15

문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.

🚫제한 사항
문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.
첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다.

❗입출력 예

s return 
"try hello world" "TrY HeLlO WoRlD"

😀 내가 푼 답

function solution(s) {
  const arr = s.split(" ");
  return arr
    .map((e) =>
      e
        .split("")
        .map((e, idx) => {
          return idx % 2 === 0 ? e.toUpperCase() : e.toLowerCase();
        })
        .join("")
    )
    .join(" ");
}
  • toUpperCase()
    • 문자열 내의 모든 문자를 대문자로 변경해줌
  • toLowerCase()
    • 문자열 내의 모든 문자를 소문자로 변경해줌

😊 문제풀이 답안 OR 다른사람들 답안

function toWeirdCase(s){
  var str = '';
  var arr = s.split(' ');
  for(var i in arr){
    for(var j=0; j<arr[i].length; j++){
      var t = arr[i][j]; 
      str += (j % 2 === 0) ? t.toUpperCase() : t.toLowerCase();
    }
    str += ' ';
  }
  return str.slice(0, str.length-1);
}

'공부 > 코딩테스트' 카테고리의 다른 글

Q. 자연수 뒤집어 배열로 만들기  (0) 2023.06.19
Q. 자릿수 더하기  (0) 2023.06.19
Q. 완주하지 못한 선수  (0) 2023.06.19
Q. 수박수박수박수박수박수?  (0) 2023.06.19
Q. 서울에서 김서방 찾기  (1) 2023.06.19