日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

【leetcode】762. 二进制表示中质数个计算置位

發布時間:2025/3/20 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【leetcode】762. 二进制表示中质数个计算置位 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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

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

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

代碼樣例:

public class Solution762 {public int countPrimeSetBits(int left, int right) {int ans = 0;for (int i = left; i <= right; i++) {int numOfOne = 0;int n = i;// 1、使用與計算有幾個1while(n>0){n = n&(n-1);numOfOne++;}// 2、得到的1的個數是質數嘛if (numOfOne==2) {ans++;continue;}for (int j = 2; j <= numOfOne-1; j++) {if (numOfOne%j==0) break;if (j == numOfOne-1) ans++;}}return ans;}public static void main(String[] args) {Solution762 solution762 = new Solution762();int ans = solution762.countPrimeSetBits(842, 888);System.out.println(ans);} }

總結

以上是生活随笔為你收集整理的【leetcode】762. 二进制表示中质数个计算置位的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。