zoukankan      html  css  js  c++  java
  • 孪生素数问题

    描述

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

    输入
    第一行给出N(0<N<100)表示测试数据组数。
    接下来组测试数据给出m,表示找出m之前的所有孪生素数。
    (0<m<1000000)
    输出
    每组测试数据输出占一行,该行为m范围内所有孪生素数组数。
    样例输入
    1
    14
    样例输出
    4
     1 #include <stdio.h>
     2 #include <string.h>
     3 #define N 1000001
     4 
     5 int flag[N];
     6 
     7 int main(){
     8     int i;
     9     int j;
    10     int T;
    11     int number;
    12     int temp;
    13     int amount;
    14     
    15     memset(flag,0,sizeof(int)*N);
    16     flag[0]=1;
    17     flag[1]=1;
    18     
    19     for(i=2;i*i<N;i++){
    20         if(flag[i]==0){
    21             for(j=i*i;j<N;j+=i){
    22                 flag[j]=1;
    23             }
    24         }
    25     }
    26     
    27     scanf("%d",&T);
    28     
    29     while(T--){
    30         scanf("%d",&number);
    31         
    32         temp=2;
    33         amount=0;
    34         for(i=2;i<=number;i++){
    35             if(flag[i]==0){
    36                 if(i-temp==1 || i-temp==2){
    37                     amount++;
    38                 }
    39                 temp=i;
    40             }
    41         }
    42         printf("%d
    ",amount);
    43     }
    44     return 0;
    45 }
  • 相关阅读:
    C计算double能精确到多少位
    C计算int最大值、最小值
    AndroidStudio右键new无activity
    java替换特殊字符串 $
    lamda表达式排序
    docker toolbox 设置镜像加速
    tomcat优化
    nginx配置相关
    SQL 优化
    elasticsearch 概念初识
  • 原文地址:https://www.cnblogs.com/zqxLonely/p/4096029.html
Copyright © 2011-2022 走看看