이상한 문자 만들기

·2022년 3월 22일
0

알고리즘

목록 보기
17/47

와 진짜 머리 고민한 문제였다.
2차원 배열인가? 2차원 배열까지 가야하는건가? 라고 고민을 해봤는데.....
아니였던 것 같다. 음... 아닌거같다.

풀이한 코드

function solution(s) {
    const monja = s.split(" ")
    const anwr = []
    for(i=0; i<monja.length; i++){
        anwr.push(monja[i].split("").map((a,b)=> {return b%2===0 ? a.toUpperCase() : a.toLowerCase()}).join(""))        
    }
    return String(anwr.join(" "))
}

진짜 진짜 어렵게 풀었다. 풀이보니까 미련하게 풀었음.

  1. 들어오는 문자열을 split(" ")으로 나눈다.
  2. 잘라서 넣을 빈 배열을 할당한다
  3. 반복문을 돌려서 monaja의 길이만큼 돌린다
  4. 그리고 들어온 문자를 다시 한번 split("")공백으로
  5. map()를 사용해서 인덱스 번호가 짝수면 대문자로, 홀수면 소문자로 변경한다.
  6. 그리고 그 값을 join("")으로 공백을 기준으로 잡아 한개로 만든다.
  7. 완성된 문자를 만들어놓은 빈 배열에 push()로 집어넣는다.
  8. 들어간 문자는 배열의 구조로 되어있기에 배열 단위를 join(" ") 스페이스를 넣어서 간격을 만든 후, String()으로 감싸서 내보낸다.

이건 내가 봤던 것 중에 짧았던(?) 코드였는데 오늘 내로 코드해석을 해보겠다

profile
물류 서비스 Backend Software Developer

0개의 댓글