프로그래머스 문제 풀이 가운데 글자 가져오기 (JS)
문제분석
단어 s의 가운데 글자를 반환하는 함수 만들기
제한조건
단어의 길이가 짝수라면 가운데 두 글자를 반환해야 함 s는 길이가 1 이상, 100이하인 문자열 데이터
문제풀이
앞에서 푼 3진법 뒤집기 문제 Spread Operator와 filter를 활용해 풀어보았다.
function solution(s) { return [...s] .filter((data, index) => { let temp = parseInt(s.length / 2, 10); if (s.length % 2 === 0) { if (parseInt(index, 10) === (temp - 1) || parseInt(index, 10) === temp) { return true; } } else { if (parseInt(index, 10) === temp) { return true; } } }) .join(''); }
다른풀이
string.substr()을 자주 사용하진 않지만 이렇게 응용하면 참 유용한 것 같다.
function solution(s) { return s.substr(Math.ceil(s.length / 2) - 1, s.length % 2 === 0 ? 2 : 1); }
binarySearch처럼 mid값을 주고, 원소가 문자열이라는 것을 활용한 풀이
function solution(s) { const mid = Math.floor(s.length/2); return s.length %2 === 1 ? s[mid] : s[mid-1]+s[mid]; }
Author And Source
이 문제에 관하여(프로그래머스 문제 풀이 가운데 글자 가져오기 (JS)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@devmomo/프로그래머스-문제-풀이-가운데-글자-가져오기-JS저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)