본문 바로가기

알고리즘/프로그래머스

[프로그래머스]수박수박수박수박수박수? - JavaScript 풀이

반응형

 

문제

 

 

 

문제 풀이

 

방법 1

function solution(n) {
    
    var answer = '';
 
    // i 값을 1 씩 증가시키면서 짝수이면, '박' 홀수이면 '수' 출력
  
    for (let i = 1; i <= n; i++) {
    
        if (i % 2 === 0) answer += "박";
    
        else answer += "수";
  }
  
    return answer;
}

가장 간단한 방법. i 값을 1 씩 증가시키면서 짝수일 때 '박' 출력, 홀수일 때 '수'를 출력시킨다.

 

 

 

방법 2

function solution(n) {
    
    var answer = '';
  
  // 입력받은 n 값의 절반만큼 repeat 시키기. 홀수일 경우 뒤에 '수' 추가
  // 절반값이 소수이면 안되기 때문에 parseInt 사용해서 정수화
    let repeatNum = parseInt(n / 2);
  
    var answer = "수박".repeat(repeatNum);

  
    if (n % 2 !== 0) answer += "수";

  
    return answer;
}

이런 방법으로도 풀 수 있구나 싶었던 방법. 입력받은 n 값의 절반만큼 repeat 시켜주고, 홀수일경우 뒤에 '수' 가 추가되도록 한다.

이때 입력받은 n 의 절반값이 소수이면 안되기 때문에 parseInt 를 이용해 정수화 시켜준다.

반응형