Coding test
[프로그래머스] 수박수박수박수박수박수 (Level 1)
Jiwoo
2022. 3. 22. 21:17
문제
길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다.
- 제한 조건
n은 길이 10,000이하인 자연수입니다.
나의 풀이
function solution(n) {
let answer = "";
for(let i = 1; i <= n; i++) {
if(i%2 === 0) {
answer += "박"
} else {
answer += "수"
}
}
return answer;
}
사실 첫 번째 오답은 아예 엉망이었다(...)
"수박"을 하나로 묶어서 출력하려고 했더니 너무 복잡해졌기 때문이다.
힌트를 얻어 위 코드를 재작성했지만, }
를 빼먹고 return answer
을 한 줄 위에 쓰는 등의 실수가 있어 에러가 떴다.
겨우 찾아내서 고친 코드.
하지만 해답을 보니 repeat
을 이용해서 훨씬 간단하게 작성할 수 있었다.
해답
const waterMelon = n => {
return '수박'.repeat(n/2) + (n%2 === 1 ? '수' : '');
}
str.repeat(n)
문자열 n번 반복