设n为一自然数,n可以分解成若干个不同的自然数的和,这样的分法有很多种,比如n=10, 10可以分解为:10=5+4+1; 10=5+3+2; 10+9+1; 10=8+2; 10=7+3; 10=6+4; 10=7+2+1; 10=6+3+1;…。在所有这些分法中,各加数乘积最大的为30,(10=5+3+2中加数的乘积为5*3*2=30)。试编写程序,求各种分解方法中各加数乘积的最大值。
输入要求:输入只有1行,自然数n。
输出要求:输出也只有1行,所有分解方法中各加数乘积的最大值。
题目已经要求不同自然数,因此根据数学原理,分解的数越接近,它们的乘积是最大的,而且不要分解出1,至少从2开始。
所以从2开始依次递增,直到最后的和大于该数,由于数是按递增排列的,故如果最后拆解的数不