JS algorithms - 패턴을 유지하는 문자열

Jaa-van·2023년 4월 8일
0
post-thumbnail

문제

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

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

기존에 익숙한 for 문을 통해 풀었지만 코드를 줄이고 반복문을 사용하지 않고 풀어보기를 시도했다

function solution(n) {
    return '수박'.repeat(n/2+1).substring(0,n) 
}

최대한 repeat 수를 줄이기 위해서 n/2 + 1을 넣어줬고 string 을 자르는 메서드에서 substr 과 substring 이 있는데 비슷하지만 둘의 차이가 있었다

@substr 과 substring

substr 은 Parameters 로 ( 시작점 , 자를 문자의 길기 ) 를,
substring 은 Parameters 로 ( 시작점 , 끝나는 지점 ) 을 받는다

따라서 시작점과 끝나는 지점의 index 를 안다면 substring을,
시작점과 자르고 싶은 문자의 길이를 안다면 substr 을 쓰면 된다

0개의 댓글

관련 채용 정보