Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 소수가 최소 2개의 공통 1비트를 공유하는지 확인

<시간/>

문제

두 개의 숫자를 취하는 JavaScript 함수를 작성해야 합니다. 우리의 함수는 숫자가 동일한 인덱스에서 이진 표현에서 1을 두 번 가지면 true를 반환해야 하고 그렇지 않으면 false를 반환해야 합니다.

예시

다음은 코드입니다 -

const num1 = 10;
const num2 = 15;
const checkBits = (num1 = 1, num2 = 1) => {
   let c = num1.toString(2).split('');
   let d = num2.toString(2).split('');
   if(c.length > d.length){
      c = c.slice(c.length - d.length);
   }else{
      d = d.slice(d.length - c.length);
   };
   let count = 0;
   for(let i = 0; i < d.length; i++){
      if(c[i] === "1" && d[i] === "1"){
         count++;
      };
   };
   return count > 1;
};
console.log(checkBits(num1, num2));

출력

다음은 콘솔 출력입니다 -

true