본문 바로가기
알고리즘

[프로그래머스 / 코딩테스트 연습] 수박수박수박수박수박수?-자바스크립트(javascript)

by 지 요니 2023. 4. 10.
🍉 문제 설명

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

🍉 제한 조건
  • n은 길이 10,000이하인 자연수입니다.
🍉 입출력 예
n return
3 "수박수"
4 "수박수박"

 

🍉 나의 문제 풀이
function solution(n) {
  let answer = "";
  for (let i = 1; i <= n; i++) {
    i % 2 == 0 ? (answer += "박") : (answer += "수");
  }
  return answer;
}

단순하게 for문을 돌면서,  홀수이면 '수', 짝수이면 '박'을 answer배열에 붙여나가는 방식으로 구현하였다

 

🍉 다른 문제 풀이

👉  repeat() 이용

function waterMelon(n){
  // n을 2로나눈 몫 만큼 곱하고 나머지가 있으면 '수' 더해라.
  return ("수박").repeat(n/2) + ((n%2) ? '수' : '');
}

n이 짝수면 repeat으로 n/2만큼 반복하고, n이 홀수이면 n/2만큼 반복한 후에 '수'를 더해줌

댓글