LeetCode题解(0762):二进制表示中质数个计算置位(Python)
发布日期:2021-06-29 19:54:14 浏览次数:3 分类:技术文章

本文共 435 字,大约阅读时间需要 1 分钟。

题目:(简单)

解法 时间复杂度 空间复杂度 执行用时
Ans 1 (Python) O ( N ) O(N) O(N) O ( 1 ) O(1) O(1) 200ms (99.05%)
Ans 2 (Python)
Ans 3 (Python)

LeetCode的Python执行用时随缘,只要时间复杂度没有明显差异,执行用时一般都在同一个量级,仅作参考意义。

解法一:

【思路】

因为L≤R≤106≤220,所以我们只需要枚举20以内的质数即可。

def countPrimeSetBits(self, L: int, R: int) -> int:    primes = {
2, 3, 5, 7, 11, 13, 17, 19} ans = 0 for i in range(L, R + 1): if bin(i).count("1") in primes: ans += 1 return ans

转载地址:https://dataartist.blog.csdn.net/article/details/107064045 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:LeetCode题解(0766):判断矩阵是否为托普利茨矩阵(Python)
下一篇:LeetCode题解(0748):寻找符合要求的最短单词(Python)

发表评论

最新留言

表示我来过!
[***.240.166.169]2024年04月06日 10时46分59秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章