public class Solution {
public int CountPrimes(int n) {
if (n <= )
{
return ;
} long[] prime = new long[n + ];
bool[] mark = new bool[n + ]; int primeSize = ; for (int i = ; i < n; i++)
{
mark[i] = false;
} for (long i = ; i < n; i++)
{
if (mark[i] == true)
{
continue;
}
prime[primeSize++] = i;
for (long j = i * i; j <= n; j += i)
{
mark[j] = true;
}
} return primeSize;
}
}

https://leetcode.com/problems/count-primes/#/description

这道题目是意思是,计算比n小的非负数中有多少素数。

例如:

n = 7,素数有2,3,5(不包含7)一共3个

n = 8,素数有2,3,5,7一共4个

使用素数筛法可以提高效率。

python的实现如下:

 class Solution:
def countPrimes(self, n: int) -> int:
nfilter = [False] * n
count =
for i in range(,n):
if nfilter[i]:
continue
count +=
k = i + i
while k < n:
nfilter[k] = True
k += i
return count

leetcode204的更多相关文章

  1. LeetCode----204. Count Primes(Java)

    package countPrimes204; /* * Description: * Count the number of prime numbers less than a non-negati ...

  2. LeetCode204:Count Primes

    Description: Count the number of prime numbers less than a non-negative number, n. 比计算少n中素数的个数. 素数又称 ...

  3. [Swift]LeetCode204. 计数质数 | Count Primes

    Count the number of prime numbers less than a non-negative number, n. Example: Input: 10 Output: 4 E ...

  4. 求素数个数的优化-LeetCode204

    问题 计数质数 统计所有小于非负整数 n 的质数的数量. 示例: 输入: 10 输出: 4 解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 . 第一种解法容易想到但是会 超时 ...

随机推荐

  1. K-Means算法的收敛性和如何快速收敛超大的KMeans?

    不多说,直接上干货! 面试很容易被问的:K-Means算法的收敛性. 在网上查阅了很多资料,并没有看到很清晰的解释,所以希望可以从K-Means与EM算法的关系,以及EM算法本身的收敛性证明中找到蛛丝 ...

  2. 免费一年MAP2014+6个月免费MIS2014

    活动页面:http://promos.mcafee.com/en-us/Affiliates/400/Lp/np2815_mavp.aspx?rfhs=1&LPName=np2815_mavp ...

  3. DataReader使用

    一.DataReader含义 DataReader相比于DataSet,DataReader是一个抽象类,所以不能用DataReader DR = new DataReader(),来构造函数创建对象 ...

  4. 斯特灵(Stirling)数

    http://zh.wikipedia.org/wiki/%E6%96%AF%E7%89%B9%E7%81%B5%E6%95%B0 第一类:n个元素分成k个非空循环排列(环)的方法总数 递推式:s(n ...

  5. js实现trim()方法

    在面向对象编程里面去除字符串左右空格是很容易的事,可以使用trim().ltrim() 或 rtrim(),在jquery里面使用$.trim()也可以轻松的实现.但是在js中却没有这个方法.下面的实 ...

  6. PyalgoTrade 优化(六)

    满足优化器组件.这个想法很简单: 有一个服务器负责: 提供数据来运行策略. 提供运行策略的参数. 记录每个工作线程的策略结果. 有多名工作人员负责: 使用服务器提供的数据和参数运行策略. 为了说明这一 ...

  7. android如何改变应用程序安装后显示的图标

    修改 res目录下所有ic_launcher.png 为你想显示的图标

  8. streamsets Executors 说明

    执行程序阶段在收到事件时触发任务.执行者不会写入或存储事件. 将执行程序用作事件流中数据流触发器的一部分,以执行事件驱动的与管道相关的任务,例如在目标关闭时移动完全写入的文件. 可以使用的execut ...

  9. streamsets record header 属性

    record 的header 属性可以在pipeline 逻辑中使用. 有写stages 会为了特殊目录创建reord header 属性,比如(cdc)需要进行crud 操作类型的区分 你可以使用一 ...

  10. 真实赛车3,FERRARI之魂不买FERRARI 599 GTO可以解锁顶点系列。

    难点1,在仅有458 SPIDER的情况下,“TURBO BURST技巧混战”中 Mount Panorama速度快照,比较难.多重试十几次. 难点2,“TURBO BURST大满贯”中直道赛,用45 ...