문제

길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다.

제한 조건

n은 길이 10,000이하인 자연수입니다.

입출력 예

내 답변

고려사항

function solution(n) {
    
    const watermelon = "수박";
    const nLength = n % 2 ? n - 1: n;
    let result = '';
    
    for(let i = 0; i< nLength/2; i++){
        result += watermelon;
    }
    
    return n % 2 ? result + watermelon.slice(0,1) : result;
}

다른 사람 답변

function waterMelon(n){
  return "수박".repeat(n).slice(0,n);
}

repeat 메소드로 n 만큼 더해서 slice로 자른다.

function waterMelon(n){
  return ("수박").repeat(n/2) + ((n%2) ? '수' : '');
}

repeat 메소드로 n / 2로 나눈 값을 더해서 n이 홀수면 '수'를 더하고 아니면 더하지 아니한다.