집에와서 추가로 풀어보는 Level1 문제!
길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다.
n은 길이 10,000이하인 자연수입니다.
반복문을 사용하자if문을 활용해보자.function solution(n) {
// let su = '수';
// let park = '박';
let watermelon = '';
for (let i = 0; i < n; i++ ) {
if (watermelon === '' || watermelon.endsWith('박') ) {
watermelon = watermelon + '수';
} else {
watermelon = watermelon + '박';
}
}
return watermelon;
}
solution(5);
str.endsWith(searchString,[, length]): 문자열에서 마지막에 끝나는 특정 문자열에 대해 확인 가능, true, false로 값을 반환한다.
function solution(n) {
let answer = '';
let watermelon = '수박';
if(n % 2 === 0) return answer = watermelon.repeat(n / 2);
// n이 짝수면 '수박'을 n의 몫만큼 더한다.
return answer = watermelon.repeat(n / 2) + '수';
// n이 홀수면 '수박'의 n의 몫만큼에 +'수'
}
solution(4)
function solution(n) {
let answer = '';
let watermelon = '수박';
answer = n % 2 === 0 ? watermelon.repeat(n / 2) : watermelon.repeat(n / 2) + '수';
return answer;
}
solution(4)
str.repeat(count): 문자열을 주어진 횟수 만큼 반복해서 붙인 새로운 문자열을 반환한다.
생각보다 문제를 금방 풀어서 매우 좋아했지만, 다른 분들의 문제풀이를 보고 좌절했다.
나는 왜 문제를 보면서 '짝수','홀수'라는 걸 생각하지 못했을까?
아직 무언가 수학적? 으로 생각하는게 부족한가 보다..
문제를 풀긴했지만 무언가 찜찜한 느낌😂
그래도 스스로 문제를 풀었다는 것 자체로 만족하기로 했다.
일단 나름 긴 코드를 스스로 작성해 본 것에 뿌듯😁
이해가 쏙쏙 됩니다!!