Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 자바스크립트
- map
- 모두사인
- 모두싸인마케팅
- 아이폰13
- 블록체인
- 온라인계약
- 갤럭시노트20
- 모두의사인
- 좋은습관
- 전자계약시스템
- 전자계약솔루션
- 습관
- 모두싸인마케터
- 모두싸인
- 독후감
- 코딩테스트
- 마케팅
- 아이폰12
- 독서리뷰
- 아주작은습관의힘
- 아이폰
- 알고리즘
- 전자계약서
- javascript
- 자릿수더하기
- 전자계약
- 옥소폴리틱스
- atomichabits
- 전자계약서비스
Archives
- Today
- Total
찰리의 이야기
Javascript 수박수박수박수박수박수? 본문
반응형
Javascript 수박수박수박수박수박수?
문제 : 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다.
제한 조건
- n은 길이 10,000이하인 자연수입니다.
입출력 예
n / return
3 | "수박수" |
4 | "수박수박" |
주어진 코드 ↓
function solution(n) {
var answer = '';
return answer;
}
"수"라는 글자와 "박"이라는 글자를
홀짝홀짝... 반복에 따라 어떻게 나타내야할지 고민이 되었습니다.
짝수에서는 "수박"을 n/2 번 반복하고,
홀수에서는 그 반복한 수에 "수"만 붙여주면 어떨까 싶습니다.
function solution(n) {
let arr = [];
if(n % 2 === 0){
for(let i=1; i<=(n/2); i++){
arr.push("수박");
}
}else{
for(let j=1; j<=(n/2); j++){
arr.push("수박");
}
arr.push("수");
}
return arr.join("");
}
여기까지가 제 풀이 방법이고,
다른 풀이법도 살펴보았습니다.
const waterMelon = n => {
return '수박'.repeat(n/2) + (n%2 === 1 ? '수' : '');
}
깔끔하네요.
역시 문자의 반복에서는 repeat() 메서드를 이용하는게 좋아보입니다.
n/2 번 "수박"을 출력하고, 홀수인 경우 "수"만 붙인다는 구조는 저랑 같았지만,
훨신 간단하게 풀어냈네요.
문자의 반복은 repeat() 메서드를 활용하자!
Javascript 수박수박수박수박수박수?
반응형
'찰리: 코딩 연습' 카테고리의 다른 글
Javascript 문자열 내림차순으로 배치하기 (0) | 2021.09.22 |
---|---|
Javascript 문자열 다루기 기본 (0) | 2021.09.21 |
Javascript 시저 암호 (0) | 2021.09.16 |
Javascript 이상한 문자 만들기 (0) | 2021.09.15 |
Javascript 자릿수 더하기 (0) | 2021.09.14 |
Comments