题目叙述
素数,又称质数,是指除 1 和其自身之外,没有其他约数的正整数。例如 2、3、5、13 都是素数,而 4、9、12、18 则不是。
虽然素数不能分解成除 1 和其自身之外整数的乘积,但却可以分解成更多素数的和。 你需要编程 求出一个正整数最多能分解成多少个互不相同的素数的和。
例如,21 = 2 + 19是21的合法分解方法。21 = 2 + 3 + 5 + 11则是分解为最多素数的方法。
输入格式
n (10≤n≤198)。
输出格式
第一行一个整数,表示n 最多能分解成多少个不同的素数的和。
第二行输出次拆分方案,格式见样例,数字按照从小到大的顺序输出
样例
输入
21
输出
4
21=2+3+5+11
共 7 条回复
十分感谢
感觉像一个搜索的样子
需要一个stack
n这么小,您觉得呢
这个是贪心,从2开始枚举
?