알고리즘

(실패)프로그래머스 Level 1 - 이상한 문자 만들기 (JavaScript)

또롱또 2022. 5. 15. 15:51
728x90

https://programmers.co.kr/learn/courses/30/lessons/12930

function solution(s) {
    var answer = '';
    
    // 받아온 값을 배열로 만들어준다
    let arr = s.split("");
    
    // map은 첫번쨰 파라미터에서는 값, 두번째는 인덱스를 가져온다
    arr = arr.map((value,index)=>
                  // 인덱스%2로 짝홀판별
                  (index%2 === 0 ? value.toUpperCase() : value.toLowerCase()))
            //배열을 문자열로
            .join('');
    
    return arr;
}

오랜만에 이런저런거 다 동원해서 잘 푼거같은데, 테스트케이스 3~4개만 통과했다.

오늘의 마지막문제로, 더 생각하기 뭔가 싫어서 답을 열어서 가져왔다.

문자열 하나하나 돌면서  정답에 하나하나 끼워서 답을 배출하는 코드이다.

아직 map, join, split같은 함수들에 대한 이해도가 부족한거 같다.

function toWeirdCase(s){
  var result = "";
    var num = 0;
    
  for(var i = 0; i < s.length; i++){
   if(s.charAt(i) == " "){
    num = 0;
    result += " ";
    continue;
   }
    else if(num % 2 == 0){
      result += (s.charAt(i)).toUpperCase();
      num++;
    }
    else{
      result += (s.charAt(i)).toLowerCase();
      num++; 
    }
  }
  
  return result;
}
728x90