正文内容加载中...
摘要:
题意:给一个整数N(2 ≤ N ≤ 109),求至少可以找到几个素数的相加和为N,并输出各个素数。解题思路:这题用到了有名的哥德巴赫猜想:任一大于5的整数都可写成三个素数之和,任一大于2的偶数都可写成两个素数之和。从这个猜想中可以得到,任何一个整数N(N>=2)最多由三个素数相加构成。要分情况考虑: 1. 如果N为偶数,1)如果N==2,直接输出; 2)如果N>2,那么N一定可以写成两个素数的和; 2.如果N为奇数,1)如果N自身就是素数,则直接输出; 2)如果N由两个素数构成,这两个素数只可能是:2 和 N-2;3)N为三个素数之和。View Code 1#include< 阅读全文