题目描述 Description

给定区间[L, R](L <= R <= 2147483647,R-L <= 1000000),请计算区间中素数的个数。

输入描述 Input Description

两个数L和R

输出描述 Output Description

一行,区间中素数的个数

样例输入 Sample Input

2 11

样例输出 Sample Output

5

数据范围及提示 Data Size & Hint

详见试题

#include<cstdio>
#include<iostream>
#include<cmath>
using namespace std;
int l,r,f[1100000]={0},a[1100000],ans=0;//重要的事情说三遍,数组开大点,数组开大点,数组开大点!(找了一晚上错误,就是找不到错误,马丹,最后发现数组开小了,明明我是卡着点开的数组)
int su(int x)
{
if (x==2) return 1;
for (int i=2;i<=ceil(sqrt(x));i++)
if (x%i==0) return 0;
return 1;
}//判断是不是素数
void pc(int x)
{
int q=l/x;
int s=l%x;
int h=r/x;
for (int j=0;j<=h-q;j++)
f[x-s+x*j]=1;
if (q==0)
f[x-s]=0;
if (q>1&&s==0)
f[0]=1; }//筛子,筛掉所有素数的倍数
int main()
{ scanf("%d%d",&l,&r);
for (int i=0;i<=r-l;i++)
a[i]=l+i;
for (int i=2;i<=ceil(sqrt(r));i++)
if (su(i)) pc(i);
if (a[0]==0||a[0]==1)
f[0]=1;
if (a[1]==0||a[1]==1)
f[1]=1;
for (int i=0;i<=r-l;i++)
if (not f[i])
ans++;
printf("%d",ans);
return 0; }

  

codevs 3223 素数密度的更多相关文章

  1. hdu 5901 count prime & code vs 3223 素数密度

    hdu5901题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5901 code vs 3223题目链接:http://codevs.cn/problem ...

  2. Miller-Rabin算法 codevs 1702 素数判定 2

    转载自:http://www.dxmtb.com/blog/miller-rabbin/ 普通的素数测试我们有O(√ n)的试除算法.事实上,我们有O(slog³n)的算法. 定理一:假如p是质数,且 ...

  3. 2019HDU多校第三场F Fansblog——威尔逊定理&&素数密度

    题意 给定一个整数 $P$($10^9 \leq p\leq 1^{14}$),设其前一个质数为 $Q$,求 $Q!  \ \% P$. 分析 暴力...说不定好的板子能过. 根据威尔逊定理,如果 $ ...

  4. [codevs3223]素数密度(筛)

    题目:http://codevs.cn/problem/3223/ 分析: 可以算出来最大质因子最大不超过50000,因为如果超过50000,那么平方就超过maxlongint了.所以可以筛出5000 ...

  5. P1835 素数密度_NOI导刊2011提高(04)

    题目描述 给定区间[L,R](L≤R≤2147483647,R-L≤1000000),请计算区间中素数的个数. 输入输出格式 输入格式: 两个数L和R. 输出格式: 一行,区间中素数的个数. 输入输出 ...

  6. Codevs 1702 素数判定 2(Fermat定理)

    1702 素数判定 2 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 传送门 题目描述 Description 一个数,他是素数么? 设他为P满足(P< ...

  7. Miller_Rabin codevs 1702 素数判定2

    /* 直接费马小定理 */ #include<iostream> #include<cstdio> #include<cstdlib> #include<ct ...

  8. 素数密度_NOI导刊2011提高(04)

    题目描述 给定区间[L, R](L <= R <= 2147483647,R-L <= 1000000),请计算区间中素数的个数. 输入 两个数 L 和 R. 输出 一行,区间中素数 ...

  9. codevs 1462 素数和

    1462 素数和  时间限制: 1 s  空间限制: 64000 KB  题目等级 : 青铜 Bronze     题目描述 Description 给定2个整数a,b 求出它们之间(不含a,b)所有 ...

随机推荐

  1. 多线程爬虫Java调用wget下载文件,独立线程读取输出缓冲区

    写了个抓取appstore的,要抓取大量的app,本来是用httpclient,但是效果不理想,于是直接调用wget下载,但是由于标准输出.错误输出的原因会导致卡住,另外wget也会莫名的卡住. 所以 ...

  2. apache 创建虚拟目录

    <VirtualHost *:83>    DocumentRoot "E:\PhpProjects"</VirtualHost><Directory ...

  3. hdu4746:2013杭州网络赛I 莫比乌斯反演

    题意: 有5000组询问,每组询问求有多少i,j满足i∈[1,n],j∈[1,m]且gcd(i,j)的质因子数目<=p. n,m<=500000 思路: 首先预处理出每个数的质因子数目分别 ...

  4. 编写自己的C头文件

    1.       头文件用于声明而不是用于定义 当设计头文件时,记住定义和声明的区别是很重要的.定义只可以出现一次,而声明则可以出现多次. 下列语句是一些定义,所以不应该放在头文件里: extern ...

  5. gosslary

    TM,技术手册(Technical Manual):商标(trademark)

  6. 单机使用tungsten 同步mysql数据到mongodb

    [注意],当前的测试环境仅仅是一台服务器. 部署测试的tungten版本是2.1.2-xxxx; Requirements: mysql配置

  7. tungsten

    ./tools/tungsten-installer --master-slave -a --datasource-type=mysql --master-host=master.puppet.org ...

  8. String Format for DateTime [C#]

    This example shows how to format DateTime using String.Format method. All formatting can be done als ...

  9. CSS3实现文字描边

    -webkit-text-shadow:#000 1px 0 0,#000 0 1px 0,#000 -1px 0 0,#000 0 -1px 0; -moz-text-shadow:#000 1px ...

  10. Android Spinner列表选择框

    Spinner Spinner是一个下拉列表,通常用于选择一系列可选择的列表项,它可以使用适配器,也可以直接设置数组源. 1.直接设置数组源 在res/values/strings.xml中设置数组源 ...