题目描述: |
素数,又称质数,是指除 1 和其自身之外,没有其他约数的正整数。例如 2、3、5、13 都是素数,而 4、9、12、18 则不是。
虽然素数不能分解成除 1 和其自身之外整数的乘积,但却可以分解成更多素数的和。 你需要编程 求出一个正整数最多能分解成多少个互不相同的素数的和。 例如,21 = 2 + 19是21的合法分解方法。21 = 2 + 3 + 5 + 11则是分解为最多素数的方法。 再比如:128,最多可以分解为9个素数的和。 |
输入: | n (10≤n≤200)。 |
输出: | n 最多能分解成多少个不同的素数的和。 |
样例输入: | 21 |
样例输出: | 4 |
提示: | 样例1: 21 样例2: 128 样例输出 样例1: 4 样例2: 9 来源 2016江苏省青少年信息学奥林匹克竞赛复赛 |
来源: | 回溯 |
解答: | 回溯 |