PAT-B] 1013. 数素数 [数论]
来源:互联网 发布:国外的域名怎么备案 编辑:程序博客网 时间:2024/06/06 02:26
链接:1013. 数素数 (20)
题意
输入两个数 M, N
。
然后输出第M
个到第N
个素数。
分析
由于这里的M
和N
都是表示的第几个素数。
所以我们必须先把素数列出来。
(列素数的方法有很多,这里就不一一介绍了)
列完素数之后,就输出对应范围内的素数就好了。
要注意的是:这里的第M
个到第N
个素数也是要输出的。
代码
#include <cstdio>#define MAX 200000int sf[MAX]; // 下标对应的数字是不是素数, 1:非, 0:是int ss[10005]; // 按升序存放素数int idx = 0; // 素数数组的下标int main(){ int M, N; for( int i = 2; i <= MAX; i++ ){ // 打素数表 if( sf[i] == 0 ){ ss[idx++] = i; if( idx > 10000 ) break; if( i < 2000 ){ for( long long j = i * i; j <= MAX; j += i ){ sf[j] = 1; // 素数的倍数标注为非素数 } } } } while( ~scanf( "%d%d", &M, &N ) ){ int i = M - 1; if( i < 0 ) i++; printf( "%d", ss[i++] ); for( int j = 1; i < N; j++ ){ if( j == 10 ){ puts( "" ); j = 0; } else printf( " " ); printf( "%d", ss[i++] ); } puts( "" ); } return 0;}
小结
题目并不难,但求素数的方法是很值得去多查一查的。
阅读全文
0 0
- PAT-B] 1013. 数素数 [数论]
- PAT-B 1013. 数素数
- PAT-B 1013. 数素数
- PAT-B 1013. 数素数
- PAT(B)1013. 数素数 (20)
- pat(B) 1013. 数素数
- PAT B 1013. 数素数 (20)
- PAT-B 1013. 数素数 (20)
- PAT-B] 1007. 素数对猜想 [数论]
- PAT 1013. 数素数
- PAT 1013. 数素数
- PAT 1013. 数素数
- PAT 1013. 数素数
- PAT 1013. 数素数
- PAT(B) 1013数素数(20)
- PAT 1013. 数素数 (20)
- 1013. 数素数(PAT Basic)
- PAT乙级 1013. 数素数
- 蚂蚁分类信息系统5.8多城市版本 解决后台管理员更新信息时置顶时间同时变化的问题
- qcy教你下载你在CSDN上写过的文章——第三篇……
- Java基础知识的回顾之数据类型
- BigData-secondDay
- servlet开发步骤
- PAT-B] 1013. 数素数 [数论]
- json数组对象和对象数组
- poj 1631 Bridging signals
- 欧拉函数与欧拉定理
- 自我总结 --- 20170804自我总结
- 【#include<algorithm>】中包含的可以直接调用的函数
- 【LeetCode】Add Binary
- POJ3692——Kindergarten (二分图求最小顶点覆盖 (即最大匹配))
- Linux学习(九):权限与命令间的关系(极重要)