1. 程式人生 > 其它 >Leetcode 762. 二進位制表示中質數個計算置位(可以,一次過)

Leetcode 762. 二進位制表示中質數個計算置位(可以,一次過)


給你兩個整數 left 和 right ,在閉區間 [left, right] 範圍內,統計並返回 計算置位位數為質數 的整數個數。

計算置位位數 就是二進位制表示中 1 的個數。

例如, 21 的二進位制表示 10101 有 3 個計算置位。

示例 1:

輸入:left = 6, right = 10
輸出:4
解釋:
6 -> 110 (2 個計算置位,2 是質數)
7 -> 111 (3 個計算置位,3 是質數)
9 -> 1001 (2 個計算置位,2 是質數)
10-> 1010 (2 個計算置位,2 是質數)
共計 4 個計算置位為質數的數字。

示例 2:

輸入:left = 10, right = 15
輸出:5
解釋:
10 -> 1010 (2 個計算置位, 2 是質數)
11 -> 1011 (3 個計算置位, 3 是質數)
12 -> 1100 (2 個計算置位, 2 是質數)
13 -> 1101 (3 個計算置位, 3 是質數)
14 -> 1110 (3 個計算置位, 3 是質數)
15 -> 1111 (4 個計算置位, 4 不是質數)
共計 5 個計算置位為質數的數字。
 

提示:

  • 1 <= left <= right <= 10^6
  • 0 <= right - left <= 10^4

Code: