Front-End

vsoghlv@naver.com

알고리즘 수박수박수박수박수박수

문제 설명

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

제한사항

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

입출력 예

n return
3 수박수
4 수박수박

문제풀이

function solution(n) {
  var answer = "";
  for (let i = 0; i < n; i++) {
    if (i % 2 === 0) {
      answer += "";
    } else {
      answer += "";
    }
  }
  return answer;
}

문제를 푼 후 조금 더 간결하게 풀 수 있는 방법이 있을 것 같아 고민하다 간결한 풀이를 발견했다.

const solution  = n => {
    return '수박'.repeat(n/2) + (n%2 === 1 ? '' : '');
}

풀이 중 가장 좋아요가 많았던 풀이인데 먼저 “수박”.repeat를 사용해 받은 인자의 반만큼 반복해줬다. 그 후 반환한 문자열에 n이 홀수인경우 “수” 를 붙이도록 하여 해결하였다. 문제를 풀긴 했지만 이런 간결한 방법이 생각나지 않는다…더 공부해야겠다..