Algorithm/JavaScript

[프로그래머스 Lv. 1] 수박수박수박수박수박수?

dbfl9911 2023. 10. 31. 13:57

[ 문제 설명 ]

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

 

[ 제한 조건 ]

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

 

[ 입출력 예 ]

n return
3 "수박수"
4 "수박수박"

 


[ 문제 풀이 ]

 

1. Array(3).fill(0) : [0, 0, 0] 

- 사용해서 전체 글자 길이(n)만큼 배열안에 0 채우기

 

2. map 함수 사용해서 0을 수박수~ 글자로 바꾸기

✔️ 각 인덱스를 2로 나눈 나머지 값은 0 또는 1 밖에 안나오는 점 이용!

 

3. join 함수로 , 로 나눠진 글자 합치기

function solution(n) {
    const text = '수박';
    const answer = Array(n).fill(0).map((a,i) => text[i%2]).join('');
    return answer;
}