描述
两个质数的和是S,它们的积最大是多少?
格式
输入格式
一个不大于10000的正整数S,为两个质数的和。
输出格式
一个整数,为两个质数的最大乘积。数据保证有解。
样例
输入样例
50
输出样例
589
#include<stdio.h>
#include<math.h>
int b;
int ss(int x);
int main()
{
int s;
int max=0;
scanf("%d",&s);
for(int i=1;i<=s;i++)
{
ss(i);
i=b;
for(int j=1;j<=i;j++)
{
ss(j);
j=b;
if(i+j==s)
{
if(i*j>max) max=i*j;
break;
}
}
}
printf("%d",max);
return 0;
}
int ss(int x)
{
int a=2;
while(a<=sqrt(x))
{
if(x%a==0) break;
else a++;
}
if(a<=sqrt(x))
{
x++;
ss(x);
}
else
{
b=x;
return b;
}
}