#P1374. 素数分解

素数分解

题目描述

素数,又称质数,是指除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,输出4。

样例2:输入128,输出9。

注意:分解的素数必须互不相同,且要求最多素数个数。