출처: programmers.co.kr/learn/courses/30/lessons/12922?language=javascript
문제
길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다.
1. 나의 풀이
function solution(num) {
let anwser = '';
for (let i = 0; i < num; i++) {
anwser += i % 2 === 0 ? '수' : '박';
}
return anwser;
}
const anwser = solution(5);
console.log(anwser);
for문을 사용해 파라미터에 전달된 숫자 만큼 반복하게끔 하였고 ( for문의 초기값이 0이기에 for문의 반복 조건을 파라미터에 전달된 수보다 적은 수까지만 반복 되게하면 전달된 수만큼 반복함 )
for문 블럭 안에 삼항 연산자를 사용하여 현재 반복되는 수가 2로 나누었을 때 나머지가 0이면 '수'를 answer 변수에 더하고 나누었을 떄 나머지가 0이 아니면 '박'을 변수에 더하게 하였다.
( 결론적으로 파라미터로 전달된 숫자가 짝수면 수박 이런식으로 끝부분이 '박'으로 끝나고 홀수면 수박수 이런식으로 '수'로 끝남 )
2. 다른 사람 풀이
function waterMelon(n){
return n % 2 === 0 ? '수박'.repeat(n/2) : '수박'.repeat(n/2).concat('수')
}
'개발 공부한 내용 정리 > Algorithm' 카테고리의 다른 글
Algorithm- 딕셔너리를 이용한 동명이인 찾기 알고리즘 (0) | 2020.08.20 |
---|---|
Algorithm- 큐와 스택을 활용한 회문(똑바로 읽어도 거꾸로 읽어도 같은 단어나 문장) 찾기 (0) | 2020.08.19 |
Algorithm- 이분 탐색 (0) | 2020.08.18 |
Algorithm- 퀵 정렬 알고리즘 (0) | 2020.08.17 |
Algorithm- 병합 정렬 (0) | 2020.08.16 |