2884 - 现代版哥德巴赫猜想
时间限制 : 1 秒
内存限制 : 128 MB
哥德巴赫猜想用现代数学方法陈述即:任一大于5的整数都可写成三个素数之和。这一猜想至今为止还未完全证明。
在一定范围内,我们可以用计算机编程来验证它,请你试一试!
题目输入
一行:一个整数n (5<n<1000000)
题目输出
一行:3个素数,中间用空格隔开。第一、二个为最小可能素数。
输入/输出样例
输入格式
8
输出格式
2 3 3
C++解答
#include<cstdio> #include<cmath> bool pd(int x) { if(x<2) return false; for(int i=2;i<=sqrt(x);i++) if(x%i==0) return false; return true; } int main() { int n; scanf("%d",&n); for(int i=2;i<=n/3;i++) for(int j=i;j<=n-i;j++) if(pd(i)&&pd(j)&&pd(n-i-j)) { printf("%d %d %d",i,j,n-i-j); return 0; } }