js-mentorship-razvan / javascript

Javascript study notes
GNU General Public License v3.0
22 stars 2 forks source link

Cyclops numbers #456

Closed RazvanBugoi closed 4 years ago

RazvanBugoi commented 4 years ago

https://www.codewars.com/kata/56b0bc0826814364a800005a/train/javascript

RazvanBugoi commented 4 years ago
function cyclops(n) {
  let num = n;
  let binaryNum = n.toString(2);
  let zeros = 0;
  let ones = 0;
  if ( binaryNum.length % 2 != 0 ) {
      for (let i=0; i<binaryNum.length; i++) {
          if (binaryNum[i] == 0) {
              zeros += 1;
          } else {
              ones += 1; 
}
}
    return ones == 1 || zeros == 1 ? true : false;
} else {
        return false;
}
}
RazvanBugoi commented 4 years ago

There are a few test cases that fail and I don't know why.

RazvanBugoi commented 4 years ago
function cyclops(n) {
  let binaryNum = n.toString(2).split('0');
    return binaryNum.length == 2 && binaryNum[0] == binaryNum[1];
}