본문 바로가기
IT/Javascript

수박수박수박수박수박수?

by DOSGamer 2022. 7. 14.
반응형

문제

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

제한조건

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

입출력 예


n return
3 수박수
4 수박수박

풀이방향

  • 수박을 반복하는 문자열을 만들어서 리턴하면 된다.

문제풀이

function subak(n) {
  let answer = '';
  let str = "수박";
  for (let i = 0; i < n; i++) {
    if (i % 2 === 0) {
      answer += str.slice(0, 1);
    } else {
      answer += str.slice(1, 2);
    }
  }
  return answer;
}

export { subak };
import { subak } from "../src/subak";

describe("subak", () => {
  it("should return 수박수 for 3", () => {
    expect(subak(3)).toBe("수박수");
  });

  it("should return 수박수박 for 4", () => {
    expect(subak(4)).toBe("수박수박");
  });
});

문제출처

다른 풀이

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

'IT > Javascript' 카테고리의 다른 글

Javascript 객체 복사 (Object, Array)  (0) 2022.08.10
두 정수 사이의 합  (0) 2022.07.14
약수의 합  (0) 2022.07.14
행렬의 덧셈  (0) 2022.07.14
문자열을 정수로 바꾸기  (0) 2022.07.14
비밀지도  (0) 2022.07.14
제일 작은 수 제거하기  (0) 2022.07.14
직사각형 별 찍기  (0) 2022.07.13