코딩테스트

[코딩테스트] 수박수박수박수

개발자 혜진 2022. 10. 1. 16:14

문제 설명

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

제한 조건
  • n은 길이 10,000이하인 자연수입니다.
입출력 예nreturn

 

3 "수박수"
4 "수박수박"
function solution(n) {
    const str = []
    for(var i = 0; i < n; i++){
       if(i % 2 === 1) testt.push('박')
        else str.push('수')
    }
    return str.join('')
}

repeat이라는 내장 메소드가 있긴하지만 그걸 어떻게 사용해야할지 감이 안와서 for문을 돌리는 것으로 해결을 했다

그리고 다른분들의 풀이로 공부를 했다.

repeat은 문자열을 반복해주는것

'abc'.repeat(2)// 'abcacb'

 

function waterMelon(n){
  var result = "수박";
   result = result.repeat(n-1).substring(0,n);
  //함수를 완성하세요

  return result;
}



function waterMelon(n){
  var result = "";
    for(var i = 0 ; i < n ; i++) {
        result += i % 2 == 0 ? "수" : "박";
  }
  return result;
}


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