길이가 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 은 Parameters 로 ( 시작점 , 자를 문자의 길기 ) 를,
substring 은 Parameters 로 ( 시작점 , 끝나는 지점 ) 을 받는다
따라서 시작점과 끝나는 지점의 index 를 안다면 substring을,
시작점과 자르고 싶은 문자의 길이를 안다면 substr 을 쓰면 된다