본 게시물은 Codility의 문제 풀이입니다.
자바스크립트 코드(나의 풀이)
function solution(number) {
// 1. 주어진 수 2진수 변환
const binaryNumber = number.toString(2);
// 2. 1을 기준으로 잘라내기
const slicedNumber = binaryNumber.slice(binaryNumber.indexOf('1'), binaryNumber.lastIndexOf('1')); // 3. 1을 기준으로 배열로 나누기
const convertedNumber = slicedNumber.split('1');
console.log(convertedNumber);
// 4. 길이가 가장 긴 요소가 최대 길이
const longestBinaryGap = convertedNumber.reduce((gap, {length}) => length > gap?length : gap, 0);
return longestBinaryGap;
}
Reference
'programming study > Algorithm' 카테고리의 다른 글
[프로그래머스] 올바른 괄호 - JavaScript 풀이(개선된 풀이) (0) | 2022.09.18 |
---|---|
[프로그래머스] 땅따먹기 - JavaScript 풀이 (0) | 2022.08.29 |
[프로그래머스] 스킬트리 - JavaScript 풀이 (0) | 2022.08.23 |
[프로그래머스] 2 x n 타일링 - JavaScript 풀이 (0) | 2022.08.22 |
[프로그래머스] 숫자의 표현 - JavaScript 풀이 (0) | 2022.08.22 |