1379 - 【提高】素数分解

题目描述

素数,又称质数,是指除 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江苏省青少年信息学奥林匹克竞赛复赛

来源

回溯 省赛

标签
题目参数
时间限制 1 秒
内存限制 128 MB
提交次数 0
通过人数 0
金币数量 3 枚
统计
上一题 下一题