NYOJ 26 孪生素数问题

孪生素数问题

时间限制:3000 ms  |  内存限制:65535 KB

难度:3

描述
写一个程序,找出给出素数范围内的所有孪生素数的组数。一般来说,孪生素数就是指两个素数距离为2,近的不能再近的相邻素数。有些童鞋一看到题就开始写程序,不仔细看题,咱们为了遏制一下读题不认真仔细的童鞋,规定,两个素数相邻为1的也成为孪生素数。

输入
第一行给出N(0<N<100)表示测试数据组数。

接下来组测试数据给出m,表示找出m之前的所有孪生素数。

(0<m<1000000)

输出
每组测试数据输出占一行,该行为m范围内所有孪生素数组数。
样例输入
1
14
样例输出
4
#include<stdio.h>
#include<math.h>
#define MAXN  1000000+10
int prime[MAXN];
int arr[MAXN];
int main()
{
	int i,j;
	int k=0;
	for(i=2;i<MAXN;i++)//查找素数,并标记为1
	if(i%2==1)  prime[i]=1;
	else prime[i]=0;
	for(i=3;i<sqrt(MAXN);i++)
	{
		if(prime[i])
		for(j=i+i;j<MAXN;j+=i)
		prime[j]=0;
	}
	prime[2]=1;
	for(i=0;i<MAXN;i++)//将素数存入arr这个数组中
	if(prime[i])
	arr[k++]=i;
	int N;
	scanf("%d",&N);
	while(N--)
	{
		int m;
		int count=0;
		scanf("%d",&m);
		if(m==0||m==1)   {printf("0\n");continue;}// 注意要结束本次运行
		for(i=1;arr[i]<=m;i++)
		{
			if(arr[i]-arr[i-1]==1||arr[i]-arr[i-1]==2)
			count++;
		}
		printf("%d\n",count);
	}
	return 0;
}

NYOJ 26 孪生素数问题

时间: 2024-11-05 17:45:57

NYOJ 26 孪生素数问题的相关文章

NYOJ 孪生素数问题

孪生素数问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 写一个程序,找出给出素数范围内的所有孪生素数的组数.一般来说,孪生素数就是指两个素数距离为2,近的不能再近的相邻素数.有些童鞋一看到题就开始写程序,不仔细看题,咱们为了遏制一下读题不认真仔细的童鞋,规定,两个素数相邻为1的也成为孪生素数. 输入 第一行给出N(0<N<100)表示测试数据组数. 接下来组测试数据给出m,表示找出m之前的所有孪生素数. (0<m<1000000) 输出 每组测试

NYOJ26 孪生素数问题

离线算出规定范围内的所有结构,不算太难,主要是注意效率,用筛法来做. 孪生素数问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 写一个程序,找出给出素数范围内的所有孪生素数的组数.一般来说,孪生素数就是指两个素数距离为2,近的不能再近的相邻素数.有些童鞋一看到题就开始写程序,不仔细看题,咱们为了遏制一下读题不认真仔细的童鞋,规定,两个素数相邻为1的也成为孪生素数. 输入 第一行给出N(0<N<100)表示测试数据组数.接下来组测试数据给出m,表示找出m之前的所

【ACM】孪生素数问题

孪生素数问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 写一个程序,找出给出素数范围内的所有孪生素数的组数.一般来说,孪生素数就是指两个素数距离为2,近的不能再近的相邻素数.有些童鞋一看到题就开始写程序,不仔细看题,咱们为了遏制一下读题不认真仔细的童鞋,规定,两个素数相邻为1的也成为孪生素数. 输入 第一行给出N(0<N<100)表示测试数据组数.接下来组测试数据给出m,表示找出m之前的所有孪生素数.(0<m<1000000) 输出 每组测试数据

孪生素数问题

描述 写一个程序,找出给出素数范围内的所有孪生素数的组数.一般来说,孪生素数就是指两个素数距离为2,近的不能再近的相邻素数.有些童鞋一看到题就开始写程序,不仔细看题,咱们为了遏制一下读题不认真仔细的童鞋,规定,两个素数相邻为1的也成为孪生素数. 输入 第一行给出N(0<N<100)表示测试数据组数. 接下来组测试数据给出m,表示找出m之前的所有孪生素数. (0<m<1000000) 输出 每组测试数据输出占一行,该行为m范围内所有孪生素数组数. 样例输入 1 14 样例输出 4 1

NYOJ 26 孪生素数

#include<stdio.h>#include<math.h> #include<assert.h>int is_prime(int x){ int i,m; assert(x>=0); if(x==1) return 0; m=floor(sqrt(x)+0.5); for(i=2;i<=m;i++) if(x%i==0) return 0; return 1;}int main(){ int num; scanf("%d",&am

白话空间统计之五:空间关系的概念化(下)

空间关系的概念化,在ArcGIS中,一共是有7种.前面我们说了反距离.距离范围.无差别区域和面邻接四种,后面还有三种今天一并说完. 后面的几种,其实也都是在前面的那些"简单粗暴"的模型中发展而来的,正所谓"大道至简"一点也没错. 五.K 最近相邻要素 所谓的K最近相邻,就是指在一定的范围内,都算相邻的要素,这个概念是"距离范围"模型改良之后生成的.距离范围是以一定距离为阈值,而这个模型是以要素的个数为阈值的. 比如,你选定了K=8,那么这个要素周

认识数学各个分支

数论 人类从学会计数开始就一直和自然数打交道了,后来由于实践的需要,数的概念进一步扩充,自然数被叫做正整数,而把它们的相反数叫做负整数,介于正整数和负整数中间的中性数叫做0.它们和起来叫做整数. 对于整数可以施行加.减.乘.除四种运算,叫做四则运算.其中加法.减法和乘法这三种运算,在整数范围内可以毫无阻碍地进行.也就是说,任意两个或两个以上的整数相加.相减.相乘的时候,它们的和.差.积仍然是一个整数.但整数之间的除法在整数范围内并不一定能够无阻碍地进行. 人们在对整数进行运算的应用和研究中,逐步

数学@2019

年初,证明了<strong>指标定理</strong>,为数学和物理学作出杰出贡献的数学家<strong>迈克尔·阿蒂亚爵士</strong>与世长辞,享年 89 岁:3 月,数学领域的最高奖项之一——阿贝尔奖——授予了数学家<strong>凯伦·乌伦贝克</strong>,以表彰她在"几何偏微分方程.规范理论和可积系统的开创性贡献,以及她在分析.几何和数学物理领域的工作上的深远影响 ",她也成为了首位获此殊荣的女

陈景润院士生平事迹描述

陈景润院士生平事迹简介 寄语:陈景润对于数学尤其是数论的痴迷已经到了无我的境界.用于攻克哥德巴赫猜想的稿纸有几麻袋,常年在自己不到6平米的房间里废寝忘食地演算.即使在自己病入膏肓的时候,也不忘去突破,也不忘记对于青年数学家的培养和教导.他最信奉的格言就是“人生不是索取而是奉献”.今天励志故事网分享给各位读者的是陈景润院士生平事迹简介,欢迎阅读. 陈景润,男,汉族,1933年5月22日生于福建福州.1950年8月前在家乡读小学.中学.1950年9月至1953年8月就读于厦门大学数学系.1953年9