#CYF0055. 最多质数之和
最多质数之和
题目背景
今天小 C
今天发现任何一个大于 的正整数都可以描述为多个质数之和,
比如 :
$10 = 2 + 2 + 2 + 2 + 2 = 2 + 3 + 5 = 3 + 3 + 2 + 2 ...$ 。
。
质数:质数是一类特殊的自然数,它只有两个正因数: 和它本身。这些数在数学中具有独特的地位,因为它们不能被其他自然数整除(除了 和它本身)。例如, 和 都是质数。
因数:因数是指整数 除以整数 的商正好是整数而没有余数,称 是 的因数, 是 的倍数。因数也被叫做约数。
题目描述
小 C
现在给你一个正整数 ,希望你将 尽可能的拆成更多的质数,请问最多可以拆成多少个,并从小到大将拆出来的质数输出。
输入格式
输入一行。
一行输入一个正整数 。
输出格式
输出两行。
第一行输出一个正整数,代表 能够拆成最多质数的个数。
第二行从小到大输出拆出来的质数。
样例 #1
样例输入 #1
5
样例输出 #1
2
2 3
样例 #2
样例输入 #2
6
样例输出 #2
3
2 2 2
提示
数据范围与提示:
样例解释】:
-
对于第一组样例, ,最多只能拆成这样,所以能拆成 个质数,从小到大输出
2 3
。 -
对于第二组样例: ,最多能拆成 个质数,从小到大输出
2 2 2
。
数据范围】:
测试点编号 | ||
---|---|---|
01 ~ 10 |
||
11 ~ 15 |
||
16 ~ 20 |
对于 的数据,保证 。