质数的和与积
题目描述
两个质数的和是S,它们的积最大是多少?
输入
一个不大于10000的正整数S,为两个质数的和。
输出
一个整数,为两个质数的最大乘积。数据保证有解。
样例
输入数据 1
50
输出数据 1
589
来源
一本通在线评测
代码
#include<bits/stdc++.h>
using namespace std;
int a(int n){
for(int j=2;j<=sqrt(n)+1;j++){
if(n%j==0){
return false;
}
}
return true;
}
int n;
int main(){
cin>>n;
for(int i=n/2;i<=n;i++){
if(a(i)&&a(n-i)){
cout<<i*(n-i);
return 0;
}
}
cout<<0;
}