728x90
https://programmers.co.kr/learn/courses/30/lessons/12903
solution 함수 자체가 가운데 글자를 가져오는 것이기 때문에 문자열의 길이가 홀수인지 짝수인지를 판단하여 홀수일 때는 가운데 한글자만 짝수일 때는 두 글자를 반환하도록 하였다.
이때 홀수, 짝수를 판별할 때 if(n % 2)를 사용할 수 있겠지만 함수형 프로그래밍에서는 if(isOdd(n)) 처럼 사용하도록한다.
구현
- 문자열의 길이가 홀수인지 짝수인지를 판별하고
- 홀수일 때는 가운데 글자 한 개, 짝수일 때는 두개를 answer에 합쳐서 반환한다.
function isOdd(len) {
if (len % 2) return true;
return false;
}
function solution(s) {
let answer = '';
let mid = Math.floor(s.length / 2);
answer += isOdd(s.length) ? s[mid] : s[mid-1] + s[mid];
return answer;
}
'프로그래밍 > 함수형 프로그래밍' 카테고리의 다른 글
[함수형 프로그래밍 연습하기] 프로그래머스 Level1 - 핸드폰 번호 가리기 (0) | 2021.08.06 |
---|---|
[함수형 프로그래밍 연습하기] 프로그래머스 Level1 - 평균 구하기 (0) | 2021.08.06 |
[함수형 프로그래밍 연습하기] 프로그래머스 Level1 - 같은 숫자는 싫어 (1) | 2021.08.05 |
함수형 프로그래밍의 특징 (1) (0) | 2021.08.05 |
[함수형 프로그래밍 연습하기] 프로그래머스 Level1 - 약수의 개수와 덧셈 (0) | 2021.08.05 |