您的位置:首页 > 其它

1007. 素数对猜想

2017-10-14 14:34 190 查看
让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数。显然有 d1=1 且对于n>1有 dn 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。

现给定任意正整数N (< 105),请计算不超过N的满足猜想的素数对的个数。

输入格式:每个测试输入包含1个测试用例,给出正整数N。

输出格式:每个测试用例的输出占一行,不超过N的满足猜想的素数对的个数。
输入样例:
20

输出样例:

4

#include"stdio.h"
main()
{
int n,i,k,a[10000];
int j=0,s=0;
scanf("%d",&n);
for(k=2;k<=n;k++)
{for(i=2;i<k;i++)
if(k%i==0) break;
if(i==k)
{a[j]=k;
j++;}
}
for(i=0;i<j-1;i++)
if(a[i+1]-a[i]==2) s++;
printf("%d",s);

}

运行超时,不解

#include"stdio.h"

#include"math.h"

int main()

{

  int n,i,k,a[10000];

  int j=0,s=0;

  scanf("%d",&n);

  for(k=2;k<=n;k++){

  for(i=2;i<=sqrt(k);i++)

         if(k%i==0) break;

        
if(i>sqrt(k)){

    a[j]=k;

    j++;

}

}

  for(i=0;i<j-1;i++)

  if(a[i+1]-a[i]==2) s++;

  printf("%d",s);

  

  return 0;

  

}

不超时的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: