ㅇㅇㅈ Blog

프론트엔드 수행중

0%

수박수박수

수박수박수

문제

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

제한 조건

  • n은 길이 10,000이하인 자연수

입출력 예

n return
3 “수박수”
4 “수박수박”

soulution

  1. 인자로 받은 n 만큼 for문을 돈다
  2. i를 2로 나누었을때 몫이 0일 경우에 수를 추가해준다 아니면 박을 추가해준다
1
2
3
4
5
6
7
8
9
function solution(n) {
var answer = ''
for (let i = 0; i < n; i++) {
i % 2 === 0 ? (answer += '수') : (answer += '박')
}
console.log(answer)
return answer
}
solution(3)

다른 사람 풀이

1
2
3
4
const waterMelon = n => "수박".repeat(n).slice(0,n);

console.log("n이 3인 경우: "+ waterMelon(3))
console.log("n이 4인 경우: "+ waterMelon(4))

repeat()과 slice() 사용했다

repeat()은 문자열을 주어진 횟수만큼 반복 해준다

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/repeat

1
'수박'.repeat(3) // "수박수박수박" 이 된다

이후 slice()로 0번째서 시작해 인자로 받은 n개만큼(n번째 인덱스의 그 바로 전까지만 추출된다) 추출 해준다…