• F


    F - Goldbach`s Conjecture

    题目链接:https://vjudge.net/problem/LightOJ-1259#author=yyb

    题目大意:

    T组询问,每组询问是一个偶数n,验证哥德巴赫猜想,回答n=a+b,且a,b(a<=b)是质数的方案个数。

    解题思路:

    欧拉筛,遍历到 $2^{*}$prime$[j]<=n$ ,其中令$a=prime[j],b=n-prime[j]$,判断b是否为质数即可。

    代码:

     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 #define debug(a) cout<<#a<<":"<<a<<endl;
     4 typedef long long ll;
     5 const int INF=1e9+7;
     6 const ll N=1e7+7;
     7 const int mod=1e9+7;
     8 int T,n;
     9 bool isprime[N];
    10 int prime[N/10];
    11 int m;
    12 void primes(){
    13     memset(isprime,false,sizeof(isprime));
    14     isprime[1]=true;
    15     m=1;
    16     for(ll i=2;i<N;i++){
    17         if(!isprime[i]){
    18             prime[m++] = i;
    19             for(ll j=i*i;j<N;j+=i){
    20                 isprime[j] = true;
    21             }
    22         }
    23     }
    24 }
    25 int main(){
    26     primes();
    27     cin>>T;
    28     int a,num;
    29     for(int i=1;i<=T;i++){
    30         scanf("%d",&a);
    31         num=0;
    32         for(int j=1;2*prime[j]<=a;j++){
    33             if(!isprime[a-prime[j]]){
    34                 num++;
    35             }
    36         }
    37         printf("Case %d: %d
    ",i,num);
    38     }
    39     return 0;
    40 }
  • 相关阅读:
    网络编程的基础
    day31作业
    异常处理其他内容
    异常处理的使用
    常见的异常种类
    ansible条件使用--实践
    Ansible的循环
    Ansible的条件语句
    ansibleplaybook的使用
    ansible官方文档翻译之变量
  • 原文地址:https://www.cnblogs.com/meanttobe/p/12397272.html
Copyright © 2020-2023  润新知