zoukankan      html  css  js  c++  java
  • F

    题目大致的意思是输出一个偶数总共有多少个素数对构成哥德巴赫猜想(PS:陷阱好多,稍一不慎就超内存了)

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <cstring>
     4 
     5 using namespace std;
     6 
     7 const long long maxn=1e7+5;
     8 
     9 bool ip[maxn];//使用long long会超内存
    10 long long T,n,p[1000005];//注意数组p的长度否则超内存
    11 
    12 void is_prime()
    13 {
    14     long long k=0;
    15     memset(ip,0,sizeof(ip));
    16     memset(p,0,sizeof(p));
    17     ip[0]=ip[1]=1;
    18     for(long long i=2;i<=maxn;i++)
    19     {
    20         if(!ip[i])
    21         {
    22             p[++k]=i;
    23             for(long long j=i+i;j<=maxn;j+=i)
    24             {
    25                 ip[j]=1;
    26             }
    27         }
    28     }
    29 }
    30 
    31 int main()
    32 {
    33     ios::sync_with_stdio(false);
    34     is_prime();
    35     cin>>T;
    36     for(int i=1;i<=T;i++)
    37     {
    38         int sum=0;
    39         cin>>n;
    40         for(int i=1;p[i]<=n/2;i++)
    41         {
    42             if(ip[n-p[i]]==0) sum++;//保证两个数都为素数,且加和为n
    43         }
    44  }       printf("Case %d: %d
    ",i,sum);
    45     }
    46 
    47     return 0;
    48 }
  • 相关阅读:
    Qt笔记之 信号和槽
    Qt笔记之 坐标系
    Qt笔记之 QPushButton
    点双连通
    bzoj 2179 FFT快速傅立叶
    bzoj 4128 矩阵求逆
    bzoj 3924 点分
    bzoj 1076 状态压缩最优期望
    bzoj 3143 随机游走
    bzoj 4084 双旋转字符串
  • 原文地址:https://www.cnblogs.com/Fy1999/p/8893074.html
Copyright © 2011-2022 走看看