博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
洛谷 P1865 A % B Problem[筛素数/前缀和思想/区间质数个数]
阅读量:6969 次
发布时间:2019-06-27

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

题目描述

区间质数个数

输入输出格式

输入格式:

一行两个整数 询问次数n,范围m

接下来n行,每行两个整数 l,r 表示区间

输出格式:

对于每次询问输出个数 t,如l或r∉[1,m]输出 Crossing the line

输入输出样例

输入样例#1:
2 51 32 6
输出样例#1:
2Crossing the line

说明

【数据范围和约定】

对于20%的数据 1<=n<=10 1<=m<=10

对于100%的数据 1<=n<=1000 1<=m<=1000000 -10^9<=l<=r<=10^9 1<=t<=1000000

【分析】:不用前缀和就TLE阿QAQ

【代码】:

#include 
using namespace std;int const MAX = 505;int const INF = 0x3fffffff;int n, m;int a[1000005];int isP(int n){ if(n == 1) return 0; for(int i=2; i<=sqrt(n); i++){ if(n % i == 0){ return 0; } } return 1;}int main(){ cin >> n >> m; a[1] = 0; int l, r, ans = 0; for(int i=2; i<=m; i++){ if( i%2!=0 || i==2){ a[i] = a[i-1] + isP(i); } else{ a[i] = a[i-1]; } } //a[i]=isP(i)+a[i-1]是a[i]=a[i]前所有素数的个数,如果i是素数 a[i]要加一,否则不加(判素数的函数回的是1或0) while(n--){ ans = 0; cin >> l >> r; if(l<1||r>m){ printf("Crossing the line\n"); } else{ printf("%d\n",a[r] - a[l-1]); } }}
暴力筛

 

#include 
using namespace std;int const MAX = 1000005;int const INF = 0x3fffffff;int n, m, l, r;int a[MAX];int sum[MAX];int main(){ cin >> n >> m; a[1] = 1; for(int i=2; i<=sqrt(m); i++){ if(!a[i]){ for(int j=i+i; j<=m; j+=i){ a[j] = 1; } } } for(int i=1; i<=m; i++){ sum[i] = sum[i-1] + (a[i]^1);//异或 :a[i] = 0 ——> +1 / a[i] = ——> +0 } for(int i=1; i<=n; i++){ cin >> l >> r; if(l<1 || r>m) puts("Crossing the line"); else{ printf("%d\n",sum[r]-sum[l-1]); } }}
埃筛

 

转载于:https://www.cnblogs.com/Roni-i/p/8569815.html

你可能感兴趣的文章
【spring boot】【log4jdbc】使用log4jdbc打印mybatis的sql和Jpa的sql语句运行情况
查看>>
BZOJ3265: 志愿者招募加强版(线性规划)
查看>>
Java提高:采用异常链传递异常
查看>>
SQL Server中LIKE %search_string% 走索引查找(Index Seek)浅析
查看>>
在WPF中制作正圆形公章
查看>>
dataframe 合并(append, merge, concat)
查看>>
几种常用网络传输协议
查看>>
Http请求头和响应头
查看>>
画鬼最易
查看>>
如何恢复Windows“消失”的磁盘分区
查看>>
从工作流产品想到软件开发过程
查看>>
发布一个WM文件浏览器--foxBrowser (Specialized for SmartPhone)
查看>>
色拉英语第3集第3幕:Bottoms up
查看>>
sqoop关系型数据迁移原理以及map端内存为何不会爆掉窥探
查看>>
chrome 一进入调试页面就会自己主动打断点
查看>>
js设置和获取cookie的函数
查看>>
iOS解析Server端返回JSON数据
查看>>
〖Fedora〗设置Fedora静态ip地址
查看>>
php性能分析工具xhprof
查看>>
mysql开启慢查询方法(转)
查看>>