[매일코딩-프로그래머스] 가운데 글자 가져오기 03

2021. 11. 19. 10:38WEB Dev/CordingTEST

728x90

 

 

의외로 이 문제로 시간을 많이 쓰고 있는데......

어제는 연차 써서 하루 쉬었기 때문에 오늘 마지막으로 해결해보고 안되면 질문을 참조하려고 한다.

다른 언어 방식 보니 내가 시도한 것과 비슷한데 몇 개의 테스트에서 통과가 안되는 현상을 잘 모르겠다.

 


 

이것저것 넣어봤는데 성공했다. 🤣

 

사용한 방법은

 

- result, idx 변수를 미리 선언(초기화) 하고 조건문에서는 변수 선언을 하지 않았다. 

- idx 변수에 s.length 를 반으로 나눈 수 = s.length*0.5 혹은 s.length/2 를 넣어준다.

- 조건문으로 s.length가 짝수라면 (s.length % 2 == 0) 가운데 두 글자가 필요하기 때문에 idx에서 1이 빠진 숫자와 idx가 필요하다.

- 따라서 result 변수에 s.charAt(idx-1) + s.charAt(idx) 를 선언해주고,

- else 는 홀수일 경우니까 result 변수를 s.charAt(idx)로 바꿔준다.

- return result; 해준다.

 

결과적으로 제출한 답은 아래와 같다.

 

function solution(s) {
    var result;
    var idx = s.length/2;
    
    if(s.length % 2 == 0){
       result = s.charAt(idx-1) + s.charAt(idx);
    }else result = s.charAt(idx);
    
    return result;
}

 

 

주말에도 같은 문제 풀어야 하나 했는데 해결해서 하루를 상쾌하게 시작했다..!

 

 

728x90