**
题目描述:
**
哥德巴赫猜想:
问题描述
任一大于2的偶数都可写成两个质数之和。输入一个大于2的偶数n,输出这个数可以表达成欧拉版哥德巴赫猜想的方案数。
输入样例
10
输出样例
2
样例说明
10有以下两种符合规则的分解方案:
10=3+7
10=5+5
而10=7+3视为10=3+7的等效方案
#include<iostream>
using namespace std;
bool sushu(int a){
for(int i=2; i<a; i++) {
if(a%i==0)
return false;//不是素数
}
return true;//是素数
}
int num=0;//定义全局变量计数
void f(int n) {
for(int i=2; i<=n/2; i++) {
int a=i,b=n-i;
if(sushu(a)==true&&sushu(b)==true)
num++;
}
}
int main() {
int n;
cin>>n;
f(n);
cout<<num<<endl;
}
希望对您有所帮助