3370. Smallest Number With All Set Bits
题目简介
/**
* @param {number} n
* @return {number}
*/
题目给我们一个数字 n,要求我们求出一个大于等于 n 的数,使其所有置位都是 1(也就是该数字二进制的表示都是 1)
解题思路
由于题目要我们求大于等于 n 且二进制表示全为 1 的数
那我们只需要先知道 n 的二进制表示的长度,然后把 1 左移该长度之后减一即可
Javascript
/**
* @param {number} n
* @return {number}
*/
var smallestNumber = function(n) {
return (1 << (n.toString(2).length)) - 1;
};