프로그래머스

이상한 문자 만들기

crab. 2022. 1. 14. 16:36

📌문제 출처

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

 

코딩테스트 연습 - 이상한 문자 만들기

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

programmers.co.kr

📌나의 코드

//나의 코드
<html>
    <head>
        <meta charset="UTF-8">
        <title>출력결과</title>
    </head>
    <body>
        <script>
            function solution(s) {
                let answer = '';
                let arr = s.split(" ");
                for(let i = 0; i<arr.length; i++){
                    for(let j = 0; j<arr[i].length; j++){
                        if(j%2 === 0){
                            answer+=arr[i][j].toUpperCase();
                        }
                        else{
                            answer+=arr[i][j].toLowerCase();
                        }
                    }
                    if(i !== arr.length-1)    answer+=" "
                }
                return answer;
            }
            let s = "try hello world"
            console.log(solution(s));
        </script>
    </body>
</html>

📌코드 설명

우선 주어진 문자열을 split을 통해 배열로 바꿔줍니다.

 

이때 (" ")로 구분을 띄어쓰기로 했기 때문에 배열에는 띄어쓰기를 기준으로 들어가게 되어

 

문제에서는 총 3개가 배열로 들어가게 됩니다.

 

이후 2중포문을 이용해서 각 배열의 문자들이 하나씩 조건문을 들어가게 하는데

 

이때 j%2를 하여 이 값이 단어에서의 짝/홀을 구분하게 합니다(이중포문과 " " 를 통해 구현)

 

이후 반복문이 하나 끝나면 마지막 단어인지를 `if(i !== arr.length-1)`를 통해 체크하여 아니라면

 

띄어쓰기를 추가해주며 반복문을 실행합니다. 바깥쪽 반복문까지 끝났다면 문자열을 return해줍니다.

'프로그래머스' 카테고리의 다른 글

수박수박수박수박수박수?  (0) 2022.01.31
부족한 금액 계산하기  (0) 2022.01.31
[1차] 비밀지도  (0) 2022.01.31
정수 내림차순으로 배치하기  (0) 2022.01.14
핸드폰 번호 가리기  (0) 2022.01.14