0
点赞
收藏
分享

微信扫一扫

问题 E: 质数的和与积

青乌 2022-03-19 阅读 45
c语言

题目描述

两个质数的和是SSS,它们的积最大是多少?

输入

输入为一行,包含一个整数s(0≤S≤10000)s(0 \leq S \leq 10000)s(0≤S≤10000)

输出

一个整数,为两个质数的最大乘积。数据保证有解。

输入输出样例

样例输入 #1

复制

50

样例输出 #1

复制

589

解答: 

#include<stdio.h>
#include<math.h>
int f(int n)
{
	int i;
	for (i = 2; i <=sqrt(n); i++)
	{
		if (n % i == 0)
			return 0;
	}
	return 1;
}
int main()
{
	int sum, i, x=0, t = 0;
	scanf("%d",&sum);
	for (i = 1; i < sum; i++)
	{
		if (f(i) && f(sum - i))
		{
			x = i * (sum - i);
			if (x >= t)
				t = x;
		}
	}
	printf("%d",t);
	return 0;
}
举报

相关推荐

0 条评论