Dual Prime

题目描述

如果一个合数x=p⋅q,p,q是素数且p≠q,我们称x是双素数。 现给你一个区间[a,b],求区间内的的双素数个数。

输入

第一行是一个整数T(1≤T≤30000),为样例的数目。 以后每行一个样例,为两个整数a,b(1≤a≤b≤106)

输出

依次每行输出一个样例的结果。

样例输入

3
1 10
1 100
1 1000000

样例输出

2
30
209867

解题思路:你不是输入两个数a1,b1确定一个区间嘛,所以我就想能不能确定1~a-1这个区间有多少个双素数,1~b这个区间有多少个双素数,最后满足题意的答案即为b[b1]-b[a1-1].

#include<stdio.h>
int a[1000005];//素数
int b[1000005];//dual素数
int main()
{int i,j;a[0]=1,a[1]=1;for(i=2;i*i<=1000000;i++)//筛{if(a[i]==0){ for(j=2;j*i<=1000000;j++){a[i*j]=1;}}}a[1]=0;for(i=2;i*i<=1000000;i++){if(!a[i])//素数之前标记为 0 了,即如果 i 是素数 {for(j=i+1;i*j<=1000000;j++)// j=i+1 是为了防止 i=j {b[j*i]=(!a[j]);//这里太妙了,不必再通过循环将之前的素数标记为 1 }//用a[j]来判断 j 是不是素数,太妙啦! } }
//  for(i=2;i<=1000000;i++)
//  {
//      if(a[i]==1)//将合数记为 0
//      {
//          a[i]=0;
//      }
//      else
//      {
//          a[i]=1;
//      }
//  }
//  int sum=0;
//  for(i=1;i<=1000000;i++)
//  {
//      sum+=a[i];
//      b[i]=sum;
//  } //printf("%d\n",b[100]);for(i=2;i<=1000000;i++){b[i]+=b[i-1];//这里就开始计算每一个端点到 1 区间内的双素数个数了}int K,a1,b1,n;scanf("%d",&K);while(K--){scanf("%d %d",&a1,&b1);n=b[b1]-b[a1-1]; //这一步处理很巧妙 printf("%d\n",n);}
}

XTU OJ 1279 Dual Prime相关推荐

  1. XTU online judge 1279 Dual Prime

    Description 如果一个合数x=p⋅q,p,q是素数且p≠q ,我们称x是双素数. 现给你一个区间[a,b] ,求区间内的的双素数个数. Input 第一行是一个整数T(1≤T≤30000) ...

  2. XTU OJ 1355 Euler‘s Totient Function(欧拉函数)

    XTU OJ 1355 Euler's Totient Function(欧拉函数) 题目描述 对于整数n,定义ϕ(n)ϕ(n)ϕ(n)为小于或等于n,并与n互质的整数的个数,比如6,比它小的和它互质 ...

  3. XTU OJ 1324 Hash

    XTU OJ 1324 Hash Hash 题目描述 H a s h Hash Hash是一种很常用的数据结构,Hash技术的关键在于Hash函数的选取. 一种常用整数的 H a s h Hash H ...

  4. XTU OJ 1375 Fibonacci

    XTU OJ 1375 Fibonacci 题目描述 小明非常喜欢FibonacciFibonacciFibonacci数列,数列为 f1=1,f2=2,fn=fn−1+fn−2f_1=1,f_2=2 ...

  5. 质因数分解唯一定理(XTU OJ)

    今年的oj 很有几道题用到了,这里介绍一下 质因数分解(唯一分解定理) 基本概念: 每个合数都可以写成几个质数相乘的形式,其中每个质数都是这个合数的因数,叫做这个合数的分解质因数. 分解质因数只针对合 ...

  6. XTU Oj 128

    Rotate 题目描述 一个4×4的矩阵,我们可以把矩阵看成内外两圈,我们可以把外圈按顺时钟或者逆时钟转动,每次转动90度. 我们想得到一个2×2的子矩阵,使得这个子矩阵4个元素的累加和最大.请问最大 ...

  7. XTU OJ 1359 字符频度

    淦啊,好久不写memset都忘记怎么写了,调了半天QAQ #include<stdio.h> #include<string.h> char a[1005]; int alp[ ...

  8. xtu oj 1375斐波纳契

    题目描述 小明非常喜欢斐波纳契数列,数列为f1=1,f2=2,fn=fn−1+fn−2.小明想知道对于一个整数n,使得n=fi+fj+fk的组合有多少种?比如5=1+1+3或者5=1+2+2,有2种. ...

  9. XTU—OJ 1258矩阵

    矩阵 题目描述 编写一个程序,将1~n2按行依次填入n×n的矩阵,执行若干条行或者列的循环移动的指令,再将数字按行依次取出. 指令如下: 指令 含义 L x y x行循环左移y次 R x y x行循环 ...

最新文章

  1. XSS的原理分析与解剖
  2. 在Ubuntu虚拟机中安装VMware tools异常中断
  3. 6.SQL Server Sql语句
  4. SAP实施不成功就像女人丰乳没效果
  5. 改变层级_3DMAX基础,可编辑多边形层级介绍及概念
  6. js实现拖拽+碰撞+重力
  7. 前端学习(3062):vue+element今日头条管理-总页码处理
  8. 选中内容_Excel – 选中的单元格自动显示在A1,报表演示数据再多也能看清
  9. oauth2 java 获取token_OAuth2 Token 一定要放在请求头中吗?
  10. 光学字符识别OCR-6 光学识别
  11. 终端用sublime打开文件的方法
  12. 进销存excel_不用再花钱买软件做进销存,这份免费的Excel系统送你,财务收
  13. 自己制作的4X4光立方焊接时候出现的问题
  14. Navicat for Mysql永久激活方法
  15. 加拿大计算机科学薪酬,加拿大最好找工作及薪酬最高的十大专业介绍
  16. sin75度用计算机咋算,sin75度等于多少啊?需要用到三角函数公式
  17. 714. 买卖股票的最佳时机含手续费
  18. signature=5a522a8356f9906b0b775bdada02a4c6,合肥2016年4月29日至2016年5月12日交通违章查询...
  19. Python+Vue计算机毕业设计教师教学质量评价管理2lbw7(程序+LW+源码+部署)
  20. uni-app -- 小程序分享遇到的问题

热门文章

  1. SQL多表联合查询(交叉连接,内连接,外连接)
  2. ecmall mysql.php_ECMall支持SSL连接邮件服务器的配置方法详解
  3. 打卡日历html源码,经典模式打卡日历_闯关模式打课时列表.html
  4. tp6验证码点击刷新
  5. 主键与外键以及唯一键的选择的依据——情况之一
  6. Asterisk 开启日志,记录SIP信令
  7. 大数据离线阶段Day1之大数据时代
  8. 2020年系统集成项目管理工程师考试目标及要求
  9. 嵌入式学习ARM篇------系统移植1
  10. 未来计算机的硬件配置,2017顶级发烧配置 万元i7-7700K/GTX1080Ti顶级电脑配置方案推荐...