HDOJ2098 分拆素数和


#include<iostream>
using namespace std;

bool prime(int x){// prime 函数判断一个数是否为素数 
     for(int i=2;i*i<=x;i++)//只需要穷举到√n 
         if(x%i==0)
            return false;
     return true;     
}

int main(){
    int n,count,i;
    while(scanf("%d",&n),n){
          count=0;
          for(i=2;i<=n/2;i++){//只需穷举到n/2 
              if(i!=(n-i)&&prime(i)&&prime(n-i))//判断i是否等于n-i,并且i,n-i是否都为素数 
                  count++;                  
          }
          printf("%d\n",count);           
    }
    return 0;    
}


你可能感兴趣的:(杭电oj)